home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1993 / Internet Info CD-ROM (Walnut Creek) (1993).iso / inet / internet-drafts / draft-ietf-sip-discovery-02.txt < prev    next >
Text File  |  1993-06-16  |  110KB  |  3,523 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                        W A Simpson
  8. Internet Draft                                                Daydreamer
  9. expires in six months                                          June 1993
  10.  
  11.  
  12.  
  13.                           SIP System Discovery
  14.  
  15.  
  16.  
  17. Status of this Memo
  18.  
  19.    This memo is the product of the SIP Working Group of the Internet
  20.    Engineering Task Force (IETF).  Comments on this memo should be
  21.    submitted to the sip@caldera.usc.edu mailing list.
  22.  
  23.    Distribution of this memo is unlimited.
  24.  
  25.    This document is an Internet Draft.  Internet Drafts are working
  26.    documents of the Internet Engineering Task Force (IETF), its Areas,
  27.    and its Working Groups.  Note that other groups may also distribute
  28.    working documents as Internet Drafts.  Internet Drafts are draft
  29.    documents valid for a maximum of six months.  Internet Drafts may be
  30.    updated, replaced, or obsoleted by other documents at any time.  It
  31.    is not appropriate to use Internet Drafts as reference material or to
  32.    cite them other than as a ``working draft'' or ``work in progress.''
  33.    Please check the 1id-abstracts.txt listing contained in the
  34.    internet-drafts Shadow Directories on nic.ddn.mil, nnsc.nsf.net,
  35.    nic.nordu.net, ftp.nisc.sri.com, or munnari.oz.au to learn the
  36.    current status of any Internet Draft.
  37.  
  38. Abstract
  39.  
  40.    This document specifies ICMP messages for the identification and
  41.    location of adjacent SIP systems.  This is intended to replace ARP,
  42.    ICMP Router Advertisement, ICMP Redirect, ICMP Information, ICMP
  43.    Mask, and OSPF Hello in the SIP environment.  There are also elements
  44.    of the OSI ES-IS and IS-IS Hello.
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58. Simpson                  expires in six months                  [Page i]
  59. DRAFT                       system discovery                   June 1993
  60.  
  61.  
  62. 1.  Terminology
  63.  
  64.    The following terms have a precise meaning when used in this
  65.    document:
  66.    system          a device that implements the Internet Protocol, IP [9].
  67.  
  68.    intermediate-system
  69.                    a system that forwards datagrams, as specified in [2].
  70.                    Often called a router or gateway.  This does not include
  71.                    systems that, though capable of forwarding, have that
  72.                    capability turned off.  Nor does it include systems that
  73.                    do forwarding only as required to obey Source Route
  74.                    options.
  75.  
  76.    end-system      any system that is not acting as an intermediate-system.
  77.                    Often called a host.
  78.  
  79.    dumb            the minimal implementation.  This is not meant in a
  80.                    perjorative sense.  It is intended that every mechanism
  81.                    be defined in such a way that it is implementable on a
  82.                    minimal system.
  83.  
  84.    smart           an improved implementation, possibly requiring more
  85.                    internal resources, while using less external resources.
  86.  
  87.    multicast       unless otherwise qualified, means the use of either IP
  88.                    multicast [4] or IP broadcast [6] service.
  89.  
  90.    link            a communication facility or medium over which systems
  91.                    can communicate at the link layer; that is, the protocol
  92.                    layer immediately below IP.  The term "physical network"
  93.                    has sometimes been used (imprecisely) for this.
  94.                    Examples of links are LANs (possibly bridged to other
  95.                    LANs), wide-area store-and-forward networks, satellite
  96.                    channels, and point-to-point circuits.
  97.  
  98.    multicast link  a link over which IP multicast or IP broadcast service
  99.                    is supported.  This includes broadcast media such as
  100.                    LANs and satellite channels, single point-to-point
  101.                    circuits, and some store-and-forward networks such as
  102.                    SMDS networks [8].
  103.  
  104.    interface       a system's attachment point to a link.  It is possible
  105.                    (though unusual) for a system to have more than one
  106.                    interface to the same link.
  107.  
  108.    multicast interface
  109.                    an interface to a multicast link; that is, an interface
  110.  
  111.  
  112.  
  113. Simpson                  expires in six months                  [Page 1]
  114. DRAFT                       system discovery                   June 1993
  115.  
  116.  
  117.                    to a link over which IP multicast or IP broadcast
  118.                    service is supported.
  119.  
  120.    identifier      uniquely identifies each interface; a single interface
  121.                    may have more than one such identifier.
  122.  
  123.    primary identifier
  124.                    uniquely identifies each system; only one such
  125.                    identifier is used, to simplify discovery of neighbors.
  126.  
  127.    subnet          either a single link of a subnetted IP network [7] or
  128.                    a single non-subnetted link.
  129.  
  130.    prefix          the part of an identifier which may be used for routing
  131.                    to a particular subnet, defined by logically ANDing with
  132.                    its assigned subnet mask.  More than one subnet prefix
  133.                    may identify the same link.
  134.  
  135.    zone            the part of a special identifier which indicates a
  136.                    unique subnet within an administrative domain.
  137.  
  138.    neighbor        having an identifier belonging to the same subnet.
  139.  
  140.  
  141. 2.  Criteria
  142.  
  143.    Historically, the methods for discovery of the next-hop evolved
  144.    separately from those for location of neighbors and auto-
  145.    configuration of systems.  With the advent of SIP, the old techniques
  146.    must be re-implemented, usually due to larger field sizes.
  147.    Unfortunately, older implementations frequently did not take proper
  148.    care in differentiating existing variable field lengths, version
  149.    numbers, and new types of messages.  Therefore, the techniques used
  150.    for SIP are required to be distinguishable from previous versions.
  151.  
  152.    None of the current protocols are readily extensible.  While some
  153.    have the ability to change in simple terms, such as larger addresses,
  154.    none were designed to add new kinds of information to be carried in
  155.    the same packet.
  156.  
  157.    This can be viewed is an opportunity to design a uniform and coherent
  158.    method for accomplishing these goals, rather than a liability.
  159.  
  160.    Through prior experience, the following criteria were established, in
  161.    order of relative importance.  It is understood that many of these
  162.    criteria may conflict, and require numerous tradeoffs.
  163.  
  164.  
  165.  
  166.  
  167.  
  168. Simpson                  expires in six months                  [Page 2]
  169. DRAFT                       system discovery                   June 1993
  170.  
  171.  
  172.    Multicast support
  173.  
  174.       All SIP systems are required to support multicast.
  175.  
  176.       This is the primary technique for distinguishing the new messages.
  177.       Older systems will ignore multicast messages at the link layer.
  178.  
  179.       There are numerous other advantages to using multicast for the new
  180.       messages.  In particular, when compared to broadcast, reduced
  181.       overhead for processing messages which are not ultimately intended
  182.       for the local system.
  183.  
  184.       Not all media supports multicast.  Since multicast is directly
  185.       supported by the SIP header, this technique will work even when
  186.       using link-layer broadcast, or link-layer unicast to each
  187.       recipient.
  188.  
  189.    Reduced net traffic
  190.  
  191.       Currently, there are separate packets sent for media address
  192.       resolution, router discovery, and the Hello protocols for the
  193.       various routing algorithms.  Since much of the same information is
  194.       contained in each of these packets, it would be helpful to combine
  195.       the functions in a single packet where possible.
  196.  
  197.       Also, the most common next-hop resolution protocol, the Address
  198.       Resolution Protocol (ARP), requires an additional two packets at
  199.       the beginning of each connection.  The Request is sent, a Reply is
  200.       received, and then the first datagram can be sent to the next-hop.
  201.       This causes a significant amount of traffic, and considerable
  202.       latency in establishing a connection.
  203.  
  204.       Several alternative methods were proposed:
  205.  
  206.       1)    The ISO solution (ES-IS) eliminates some of these problems.
  207.             Each end-system and intermediate-system sends Hellos on a
  208.             periodic basis.  Every system must remember all of the media
  209.             addresses for the other systems on the local network.  This
  210.             does eliminate the latency of ARP, at the expense of many
  211.             additional packets sent on a regular basis, and a large
  212.             amount of storage overhead in each system.
  213.  
  214.       2)    The first packet destined for an unknown system may be sent
  215.             to the all-systems multicast, or to a media multicast based
  216.             on a hash function of the destination.  The appropriate
  217.             system accepts the packet, and sends a redirect indicating
  218.             the appropriate media address to be used for future packets.
  219.             This reduces the traffic from 3 to 2 packets at the
  220.  
  221.  
  222.  
  223. Simpson                  expires in six months                  [Page 3]
  224. DRAFT                       system discovery                   June 1993
  225.  
  226.  
  227.             beginning of a connection, and eliminates the latency, as
  228.             the discovery packet sent is also the data packet.  The
  229.             destination identifer in the network header will be unicast,
  230.             while the media address will be multicast.  Intermediate-
  231.             systems would require extra intelligence to recognize those
  232.             packets destined beyond the local link, while multi-homed
  233.             end-systems require that capability already.  Also, this
  234.             method is not extensible to include other information useful
  235.             in mobile environments.
  236.  
  237.       3)    Using advertisements for the (fewer) intermediate systems,
  238.             and an ARP-like protocol for those end-system connections
  239.             that are on the local media.  For those packets which are
  240.             clearly destined off the local media, the packet can be sent
  241.             directly to the appropriate intermediate system.  When most
  242.             of the traffic is between systems that are not on the same
  243.             local media, this is very efficient.  When most of the
  244.             traffic is between end-systems on the local media (client-
  245.             server), the extra discovery packets will be rare.
  246.  
  247.       The solution that is detailed here is a combination of the best
  248.       features of the preceding techniques.
  249.  
  250.       Intermediate-systems advertise their locations.  When an
  251.       intermediate-system needs the location of an end-system, it
  252.       requests the location of the end-system, and the end-system
  253.       replies.  Knowledge about end-systems is concentrated in the
  254.       intermediate-systems, but only for the systems that are actually
  255.       communicating.
  256.  
  257.       End-systems send all datagrams directly to the intermediate-
  258.       systems.  If there is a more direct path to the end-system,
  259.       because it is directly accessible on the local link or another
  260.       intermediate-system would be more appropriate, the intermediate-
  261.       system issues a redirect.
  262.  
  263.       Also, by carrying media addresses within the advertisements and
  264.       redirect packets, a further ARP-like query/response can be avoided
  265.       entirely.
  266.  
  267.    Low storage overhead
  268.  
  269.       It is desirable that systems require as little storage overhead as
  270.       possible.  In particular, mobile systems often have significantly
  271.       reduced processing power and memory.
  272.  
  273.       An end-system need only retain information for those end-systems
  274.       with which it is directly communicating.
  275.  
  276.  
  277.  
  278. Simpson                  expires in six months                  [Page 4]
  279. DRAFT                       system discovery                   June 1993
  280.  
  281.  
  282.       This design requires sufficient storage in an end-system for
  283.       information about at least one intermediate-system.  In addition,
  284.       storage is required for at least one location of each service
  285.       (such as a domain name server) which is used.
  286.  
  287.       An intermediate-system may require more processing power and
  288.       memory.  Participation in routing protocols requires the knowledge
  289.       of every neighboring intermediate-system.
  290.  
  291.       When subnet prefix-routing is in use, it is not necessary for an
  292.       intermediate-system to determine the location of an end-system
  293.       until traffic for the end-system arrives.  If prefix-routing is
  294.       not used, particularly in radio and mobile environments, the
  295.       location of each reachable end-system must be continuously
  296.       retained.
  297.  
  298.    Auto-configuration
  299.  
  300.       It would be highly desirable that the connection procedures for a
  301.       configuring a new system are reduced to the minimal set of "plug
  302.       it in, turn on the power, and run".
  303.  
  304.       -  Each system, or more precisely each interface, should be
  305.          assigned an identifier, within the number space assigned to the
  306.          local subnet.
  307.  
  308.       -  Each system should be assigned a name within the local domain.
  309.          The name, and the associated identifiers, should be registered
  310.          in the local domain name server.
  311.  
  312.       -  The system should discover the external routes provided by the
  313.          intermediate-systems attached to the local subnet, so that it
  314.          can exchange packets with remote systems.
  315.  
  316.       -  The system should discover the location of servers that it
  317.          needs for configuration, loading, dumping, printing, and other
  318.          services.
  319.  
  320.       In evaluating previous experience with autoconfiguration
  321.       procedures, the following constraints were determined:
  322.  
  323.       1)    It is not possible to embed an IEEE-802 component within
  324.             every SIP identifier, since the remaining prefix would be
  325.             too small for global routing.  Using the 48-bit IEEE-802
  326.             number to identify one system within a local network that is
  327.             not designed to accomodate more than a few hundred systems
  328.             is considerable overkill.  It may be worthwhile to use the
  329.             address during initial configuration.
  330.  
  331.  
  332.  
  333. Simpson                  expires in six months                  [Page 5]
  334. DRAFT                       system discovery                   June 1993
  335.  
  336.  
  337.       2)    Random identifier assignments are to be avoided.  They do
  338.             not scale well to large networks, are difficult to track and
  339.             manage, and lead to administrative confusion.  Relying on
  340.             broadcast collision resolution procedures for avoiding
  341.             duplicate assignments results in conflicts when systems
  342.             occupy partitioned subnets, or are frequently powered down
  343.             or taken off-line.
  344.  
  345.       3)    Reassignment of identifiers should be transparent to the
  346.             human users.  In particular, renumbering, and assignment of
  347.             alias identifiers as a mobile system moves should be
  348.             automatic.
  349.  
  350.       4)    End-system users should not be concerned with routing
  351.             prefixes, or the routing methods extant on the local
  352.             network.  When used, such prefixes should be automatically
  353.             determined, and dynamic changes should propagate
  354.             automatically.
  355.  
  356.       5)    It is important to allow users to choose a system name which
  357.             is memorable and comfortable to them.  The name should be
  358.             automatically registered, and changes to the associated
  359.             identifers should be maintained automatically.
  360.  
  361.       This design handles initial self-identification and propagation of
  362.       changes in identification.  Other aspects of configuration, such
  363.       as loading the operating system and environment, and additional
  364.       facilities and servers for registration, are specified elsewhere.
  365.  
  366.    Mobility support
  367.  
  368.       This is sometimes considered a subset of the above, as related to
  369.       dynamically changing addresses while moving.  Other systems must
  370.       be notified of the changes.
  371.  
  372.       In addition, the "hidden transmitter" problem is considered (you
  373.       can hear another system, it can't hear you, but there is a path to
  374.       a third system which it can hear, completing the circuit).  This
  375.       is not well supported in any of the past protocols.
  376.  
  377.       Although basic support for mobility is provided, descriptions of
  378.       additional facilities and servers are specified elsewhere.
  379.  
  380.    Black hole detection
  381.  
  382.       In determining whether the next-hop system is still available,
  383.       there is a basic tradeoff between frequent queries and resources
  384.       used.  This design trades fewer queries against more information
  385.  
  386.  
  387.  
  388. Simpson                  expires in six months                  [Page 6]
  389. DRAFT                       system discovery                   June 1993
  390.  
  391.  
  392.       within each query and response.
  393.  
  394.       Explicit holding times are used to limit the exposure to black
  395.       holes.  The times may be dynamically shortened by the responsible
  396.       system when a resource is critical, or when the system is actively
  397.       moving.
  398.  
  399.    Media independence
  400.  
  401.       There are many instances where system discovery is accomplished
  402.       differently over different media, such as point-to-point versus
  403.       broadcast versus Large Public Data Networks.  This design places
  404.       the system discovery above the network layer, where it enjoys
  405.       greater independence.  It also encompasses media level redirects
  406.       between multiple logical subnets on the same physical media.
  407.  
  408.       There are difficulties with carrying media addresses within
  409.       packets, especially in the presence of multi-media bridges.
  410.       Rather than allowing translation by bridges in the path, this
  411.       design exercizes control at the destination system, and requires
  412.       all such media addresses to be in canonical form,
  413.  
  414.    Optimal route determination
  415.  
  416.       This is essentially a superset of next-hop discovery, combined
  417.       with resource reservation and possible policy considerations, and
  418.       the ability to redirect traffic under changing conditions.  This
  419.       is not well supported in any of the past protocols.
  420.  
  421.       To balance system overhead against network traffic, this design
  422.       attempts to adapt to a continuum of system capabilities.  Dumb
  423.       end-systems may simply send packets to a default intermediate-
  424.       system, and be redirected to the correct next-hop by more capable
  425.       intermediate-systems.  Smarter end-systems learn sufficient
  426.       information to make informed choices.
  427.  
  428.    Simplicity
  429.  
  430.       All of the above desires, and they want to keep it simple, too.
  431.       This design reduces the number of packet types which must be
  432.       supported in a pure SIP system, and reduces the number of systems
  433.       which recognize and respond to each type.  The extensions are
  434.       designed with 32 and 64 bit boundaries for efficient processing.
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443. Simpson                  expires in six months                  [Page 7]
  444. DRAFT                       system discovery                   June 1993
  445.  
  446.  
  447. 3.  Design Overview
  448.  
  449.    This proposal describes two packets, not much different from those
  450.    already deployed.  These familiar forms are re-packaged to join
  451.    common functions into the same packet to reduce traffic, and are
  452.    designed to be more extensible in the future.
  453.  
  454.    In order to foster media independence, the packets are part of ICMP,
  455.    which allows the protocols to be used over broadcast, multicast,
  456.    partial-mesh, and point-to-point media.  This is similar to the
  457.    positioning of ES-IS.
  458.  
  459.    The Where-Are-You solicitation is used to find other systems, and
  460.    associated resources and services.  General solicitations are sent
  461.    when a system interface is initialized.  Specific solicitations are
  462.    sent when one system is ready to communicate with another particular
  463.    system.
  464.  
  465.    The I-Am-Here advertisement is the answer to the Where-Are-You
  466.    solicitation.  Advertisements are also sent on a periodic basis to
  467.    indicate special resources and services.  Periodic advertisements
  468.    from a few commonly requested systems result in less traffic than
  469.    repeated solicitations from many systems.
  470.  
  471.    Each advertisement includes a lifetime field, specifying the maximum
  472.    length of time that the advertisements are to be considered valid in
  473.    the absence of further advertisements.  This ensures that other
  474.    systems eventually forget about systems that become unreachable,
  475.    whether that is because the system has failed, or it no longer
  476.    provides the advertised service.
  477.  
  478.    Each message contains "optional" extensions, designed to allow
  479.    flexibility and extensibility.
  480.  
  481.    One of the common extensions is the media address.  Each message
  482.    contains enough information to return a reply directly to the sender,
  483.    without additional location traffic.
  484.  
  485.    Another common extension is a list of the intermediate-systems which
  486.    have been heard.  This allows intermediate-systems to build a map of
  487.    the paths between intermediate-systems, and between intermediate-
  488.    systems and end-systems.  This is designed to be used by most
  489.    commonly deployed routing protocols.  This also solves the "hidden
  490.    transmitter" problem, when used together with the well-known link-
  491.    state class of routing protocols.
  492.  
  493.    Several methods of routing are supported.
  494.  
  495.  
  496.  
  497.  
  498. Simpson                  expires in six months                  [Page 8]
  499. DRAFT                       system discovery                   June 1993
  500.  
  501.  
  502. 3.1.  System Identification
  503.  
  504.  
  505.    Zone
  506.  
  507.       A Zone is defined to be a collection of links which may be
  508.       accessed as the same next-hop.  A Zone is usually a single link,
  509.       or a collection of bridged links.  When a single intermediate-
  510.       system is connected to multiple point-to-point links, these links
  511.       may be collected into a single zone.
  512.  
  513.       The Zone number is a fixed size.  The value 0 is only used to
  514.       indicate the local zone.  The values 1 through 255 indicate each
  515.       zone within an administrative domain.
  516.  
  517.       Zone numbers may be combined with an interface media address to
  518.       make a locally significant identifier.  This is useful for initial
  519.       configuration and local communication within the administrative
  520.       domain.  These identifiers may be routed in a similar manner to
  521.       prefix-routed subnets.
  522.  
  523.       The generation of these local identifiers depends upon the
  524.       availability of a registered unique number, such as an IEEE-802
  525.       number.  When there is no IEEE-802 number to be found anywhere in
  526.       the machine, such as when the machine is connected exclusively to
  527.       point-to-point links, an external link-level mechanism MUST be
  528.       used to negotiate a unique identifier.  Such a mechanism is beyond
  529.       the scope of this document.
  530.  
  531.    Prefix
  532.  
  533.       A Prefix is similar to a Zone, in that it identifies a collection
  534.       of links which may be accessed as the same next-hop.  The Prefix
  535.       may indicate a single zone, a collection of zones, an entire
  536.       administrative domain, or a collection of administrative domains.
  537.  
  538.       The Prefix is variable in size.  The Prefix Size ranges from 1 to
  539.       62.  The value of 63 cannot be used, since at least 2 bits of the
  540.       SIP 64-bit identifier are reserved to identify a particular
  541.       system.
  542.  
  543.       Prefix-routed subnet identifiers are supported for addressing
  544.       globally connected networks in the metropolitan and/or provider
  545.       addressing models.
  546.  
  547.    End-Point Identifiers
  548.  
  549.       End-Point identifiers, or any other globally unique identifier,
  550.  
  551.  
  552.  
  553. Simpson                  expires in six months                  [Page 9]
  554. DRAFT                       system discovery                   June 1993
  555.  
  556.  
  557.       may be used with future routing techniques.  An End-Point
  558.       Identifier is indicated as having a Prefix Size of 0.  A mobile
  559.       system may be treated as having an End-Point Identifier when it
  560.       appears in a prefix-routed subnet, since it will not have the same
  561.       prefix as other systems in the subnet.
  562.  
  563.    Facilities are provided for exchange of redirects and translation
  564.    between the various forms of identifiers.
  565.  
  566.  
  567. 3.2.  Multicast Support
  568.  
  569.    Every SIP system MUST join the all-systems multicast group on all
  570.    interfaces on which the system supports multicast.
  571.  
  572.    Every SIP intermediate-system MUST also join the all-routers
  573.    multicast group.
  574.  
  575.    Every SIP end-system which offers a particular service MUST also join
  576.    the multicast group for that service.  Intermediate-systems do not
  577.    join the service multicast group, as their services are discovered
  578.    under a separate process.
  579.  
  580.  
  581.  
  582.  
  583.  
  584.  
  585.  
  586.  
  587.  
  588.  
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.  
  600.  
  601.  
  602.  
  603.  
  604.  
  605.  
  606.  
  607.  
  608. Simpson                  expires in six months                 [Page 10]
  609. DRAFT                       system discovery                   June 1993
  610.  
  611.  
  612. 4.  Intermediate-System Discovery
  613.  
  614.    Before an end-system can send datagrams beyond its directly attached
  615.    link, it must discover the location of at least one operational
  616.    intermediate-system on that link.  This is accomplished through
  617.    intermediate-system advertisement messages.
  618.  
  619.    The intermediate-system advertisements also serve to indicate zone
  620.    and subnet prefixes for each link, and to establish neighbor
  621.    relationships with other intermediate-systems.
  622.  
  623.    Each intermediate-system periodically sends the I-Am-Here message to
  624.    advertise its forwarding capability.  End-systems and intermediate-
  625.    systems discover the location of their neighboring intermediate-
  626.    systems simply by listening for the advertisements.  This eliminates
  627.    the need for manual configuration of intermediate-system addresses
  628.    and is independent of any specific routing protocol.
  629.  
  630.    The advertisement messages do not constitute a routing protocol,
  631.    although they might be used by a routing protocol to build a map.
  632.    They enable systems to discover the existence of neighboring
  633.    intermediate-systems, but not necessarily which intermediate-system
  634.    is best to reach a particular destination.  If a system chooses a
  635.    poor intermediate-system for a particular destination, it should
  636.    receive a redirect from that intermediate-system.
  637.  
  638.    However, the advertisements often contain sufficient information to
  639.    make a good choice of first-hop.  This may be important for choosing
  640.    among intermediate-systems which are participating in a security
  641.    group or policy-based routing.
  642.  
  643.  
  644. 4.1.  Solicitations
  645.  
  646.    Every SIP end-system MUST implement Intermediate-System Solicitation.
  647.  
  648.    When any end-system starts up, it MUST send the Where-Are-You
  649.    solicitation to prompt the advertisement of intermediate-systems.
  650.    This is also used by the intermediate-systems to construct a map of
  651.    accessible end-systems, to discover partitions in the local subnet,
  652.    and to support mobile systems.
  653.  
  654.    If (and only if) no advertisements from neighboring intermediate-
  655.    systems are forthcoming, the end-system MAY retransmit the Where-
  656.    Are-You a small number of times, but then MUST desist from sending
  657.    more solicitations.
  658.  
  659.    Any intermediate-systems that subsequently start up, or that were not
  660.  
  661.  
  662.  
  663. Simpson                  expires in six months                 [Page 11]
  664. DRAFT                       system discovery                   June 1993
  665.  
  666.  
  667.    discovered because of packet loss or temporary link partitioning, are
  668.    eventually discovered by reception of their periodic (unsolicited)
  669.    advertisements.  Links that suffer high packet loss rates or frequent
  670.    partitioning are accommodated by increasing the rate of
  671.    intermediate-system advertisements, rather than increasing the number
  672.    of solicitations that end-systems are permitted to send.
  673.  
  674.  
  675. 4.1.1.  Constants
  676.  
  677.       MAX_SOLICITATIONS                 3 transmissions
  678.  
  679.       MAX_SOLICITATION_DELAY            1 second
  680.  
  681.       SOLICITATION_INTERVAL             3 seconds
  682.  
  683.  
  684. 4.1.2.  Implementation
  685.  
  686.    The intermediate-system solicitation is sent to the all-routers
  687.    multicast, with the scope set to local.
  688.  
  689.    An end-system is required to transmit up to MAX_SOLICITATIONS Where-
  690.    Are-You messages from any of its interfaces after any of the
  691.    following events:
  692.  
  693.    -  The interface is initialized at system startup time.
  694.  
  695.    -  The interface is reinitialized after a temporary interface failure
  696.       or after being temporarily disabled by system management.
  697.  
  698.    -  The system has its forwarding capability turned off by system
  699.       management.
  700.  
  701.    If a system chooses to send a solicitation after one of the above
  702.    events, it should delay transmission for a random amount of time
  703.    between 0 and MAX_SOLICITATION_DELAY.  This serves to alleviate
  704.    congestion when many systems start up on a link at the same time,
  705.    such as might happen after recovery from a power failure.
  706.  
  707.    It is recommended that systems include some unique value (such as one
  708.    of their interface or link-layer identifiers) in the seed used to
  709.    initialize their pseudo-random number generators.  Although the
  710.    randomization range is specified in units of seconds, the actual
  711.    randomly-chosen value should not be in units of whole seconds, but
  712.    rather in units of the highest available timer resolution.
  713.  
  714.    The small number of retransmissions of a solicitation, which are
  715.  
  716.  
  717.  
  718. Simpson                  expires in six months                 [Page 12]
  719. DRAFT                       system discovery                   June 1993
  720.  
  721.  
  722.    permitted if no advertisement is received, should be sent at
  723.    intervals of SOLICITATION_INTERVAL seconds, without further
  724.    randomization.
  725.  
  726.    Upon receiving a valid advertisement from any intermediate-system
  727.    subsequent to one of the above events, the system MUST NOT send any
  728.    solicitation on that interface (even if none have been sent yet)
  729.    until the next time one of the above events occurs.
  730.  
  731.  
  732. 4.1.3.  Receipt
  733.  
  734.    An end-system MUST silently discard any received Intermediate-System
  735.    Solicitation messages.
  736.  
  737.    An intermediate-system MUST silently discard any received
  738.    Intermediate-System Solicitation messages that do not satisfy the
  739.    following validity checks:
  740.  
  741.    -  ICMP Checksum is correct.
  742.  
  743.    -  ICMP length (derived from the payload length) is 16 or more
  744.       octets.
  745.  
  746.    -  Source Address is either 0 or the identifier of a neighbor (an
  747.       identifier that matches one of the intermediate-system's own
  748.       identifiers on the arrival interface under the prefix mask
  749.       associated with that identifer, or the zone associated with that
  750.       interface).
  751.  
  752.  
  753. 4.2.  Advertisements
  754.  
  755.    Every SIP intermediate-system MUST implement Intermediate-System
  756.    Advertisements.
  757.  
  758.    The intermediate-system advertisements include such important
  759.    information as the media address to access the system, other subnets
  760.    directly accessible through the system, services available through
  761.    the system, and neighboring intermediate-systems heard.
  762.  
  763.    Identifiers
  764.  
  765.       Each intermediate-system advertisement includes one or more
  766.       identifier fields.  These indicate the identifiers which are
  767.       presently in use for each interface of the intermediate-system.
  768.  
  769.  
  770.  
  771.  
  772.  
  773. Simpson                  expires in six months                 [Page 13]
  774. DRAFT                       system discovery                   June 1993
  775.  
  776.  
  777.    Zone
  778.  
  779.       Each advertised identifier includes a zone field.  The value
  780.       ranges from 0 to 255, and indicates a subnet number which is
  781.       unique to the administrative domain.  A value of zero indicates
  782.       that no zone number has been assigned.  It may be combined with an
  783.       interface media address to make a locally significant identifier.
  784.  
  785.       If all advertised zone values are zero, then zone routing is not
  786.       available beyond that link.  This does not prevent the use of
  787.       locally significant identifiers for communication with other
  788.       systems on the local link.
  789.  
  790.    Prefix Size
  791.  
  792.       Each advertised identifier includes a prefix size field.  The
  793.       value ranges from 0 to 62, and indicates the number of bits in the
  794.       Identifier which define the prefix mask for the link.  A value of
  795.       zero indicates an end-point identifier.  When the value is not
  796.       zero, the identifier may be used to discern prefix-routed subnet
  797.       mapping.
  798.  
  799.       If all advertised prefix values are zero, then subnet prefix-
  800.       routing is not in use on that link.
  801.  
  802.    Preference
  803.  
  804.       Each advertised identifier includes a preference field.  This is
  805.       used to choose a default intermediate-system for the first-hop
  806.       when the end-system has not yet been redirected or configured to
  807.       use a specific intermediate-system for a particular destination.
  808.       The end-system is expected to choose from those intermediate-
  809.       systems that have the highest preference level for the best
  810.       prefix-routing match.  When there is no match, or prefix-routing
  811.       is not in use, the preference value is used alone.
  812.  
  813.       A network administrator can configure intermediate-system
  814.       preference levels to encourage or discourage the use of particular
  815.       intermediate-systems as the default first-hop.  The use of
  816.       separate preferences per prefix allows the choice of different
  817.       intermediate-systems for each prefix, when there are multiple
  818.       prefixes in use for the same link.  This may be useful where
  819.       multiple organizations share resources.
  820.  
  821.       [I am not sure how this works when there are multiple identifiers
  822.       per end-system interface.]
  823.  
  824.       The preference value is not the same as the "metric" used in many
  825.  
  826.  
  827.  
  828. Simpson                  expires in six months                 [Page 14]
  829. DRAFT                       system discovery                   June 1993
  830.  
  831.  
  832.       routing protocols.  It is used only by end-systems in determining
  833.       the default first-hop, rather than by intermediate-systems in
  834.       choosing a link for transit traffic.  The values are not additive.
  835.       Therefore, the range of values is smaller, and a higher value
  836.       indicates a higher preference.
  837.  
  838.       It should be understood that preference levels learned from
  839.       intermediate-system advertisements do not affect any system's
  840.       cached route entries.  For example, if a system has been
  841.       redirected to use a particular intermediate-system to reach a
  842.       specific destination, it continues to use that intermediate-system
  843.       for that destination, even if it discovers another intermediate-
  844.       system identifier with a higher preference level.  Preference
  845.       levels influence the choice of intermediate-system only for a
  846.       destination for which there is no cached or configured route, or
  847.       whose cached route points to an intermediate-system that is
  848.       subsequently determined to be unreachable.
  849.  
  850.  
  851. 4.2.1.  Constants
  852.  
  853.       MAX_INITIAL_ADVERTISEMENTS        3 transmissions
  854.  
  855.       MAX_INITIAL_ADVERT_INTERVAL      16 seconds
  856.  
  857.       MAX_RESPONSE_DELAY                2 seconds
  858.  
  859.  
  860. 4.2.2.  Configuration
  861.  
  862.    An intermediate-system MUST allow the following variables to be
  863.    configured by system management.  Default values are specified which
  864.    make it unnecessary to re-configure these variables in most cases.
  865.  
  866.    For each interface:
  867.  
  868.    MaxAdvertisementInterval
  869.  
  870.       The maximum time (in seconds) allowed between sending
  871.       intermediate-system advertisements from the interface.  Must be no
  872.       less than 4 seconds and no greater than 1800 seconds.
  873.  
  874.       Default: 600 seconds
  875.  
  876.    MinAdvertisementInterval
  877.  
  878.       The minimum time (in seconds) allowed between sending unsolicited
  879.       intermediate-system advertisements from the interface.  Must be no
  880.  
  881.  
  882.  
  883. Simpson                  expires in six months                 [Page 15]
  884. DRAFT                       system discovery                   June 1993
  885.  
  886.  
  887.       less than 1 second and no greater than MaxAdvertisementInterval.
  888.  
  889.       Default: 0.75 * MaxAdvertisementInterval
  890.  
  891.    AdvertisementLifetime
  892.  
  893.       The value (in seconds) to be placed in the Lifetime field of
  894.       intermediate-system advertisements sent from the interface.  Must
  895.       be no less than MaxAdvertisementInterval and no greater than 9000
  896.       seconds.
  897.  
  898.       Default: 3 * MaxAdvertisementInterval
  899.  
  900.  
  901.    For each of the identifiers of each interface:
  902.  
  903.    Advertise
  904.  
  905.       A flag indicating whether or not the identifier is to be
  906.       advertised.
  907.  
  908.       Default: TRUE
  909.  
  910.    PreferenceLevel
  911.  
  912.       The preferability of the interface as a default intermediate-
  913.       system choice, relative to other intermediate-system interfaces
  914.       serving the same prefix on the same link.
  915.  
  916.       Values are in the range 0 to 255.  Higher values mean more
  917.       preferable.  The minimum value 0 is used to indicate that the
  918.       identifier, even though it may be advertised, is not to be used by
  919.       neighboring end-systems as a default intermediate-system address.
  920.  
  921.       Default: 1
  922.  
  923.    It is useful to configure an identifier with a preference level of 0
  924.    (rather than simply setting its Advertise flag to FALSE) when
  925.    advertisements are being used for "black hole" detection.  In
  926.    particular, an intermediate-system that is to be used to reach only
  927.    specific destinations could advertise a preference level of 0 (so
  928.    that neighboring end-systems will not use it as a default
  929.    intermediate-system for reaching arbitrary destinations) and a non-
  930.    zero lifetime (so that neighboring end-systems that have been
  931.    redirected or configured to use it can detect its failure by timing
  932.    out the reception of its advertisements).
  933.  
  934.    It has been suggested that, when the preference level of an
  935.  
  936.  
  937.  
  938. Simpson                  expires in six months                 [Page 16]
  939. DRAFT                       system discovery                   June 1993
  940.  
  941.  
  942.    identifier has not been explicitly configured, an intermediate-system
  943.    could set it according to the metric of the intermediate-system's
  944.    "default route" (if it has one), rather than defaulting as suggested
  945.    above.  Thus, an intermediate-system with a better metric for its
  946.    default route would advertise a higher preference level for its
  947.    identifier.  (Note that routing metrics that are encoded such that
  948.    "lower is better" would have to be inverted before being used as
  949.    preference levels in intermediate-system advertisement messages.)
  950.    Such a strategy might reduce the amount of redirect traffic on some
  951.    links by making it more likely that an end-system's first choice for
  952.    reaching an arbitrary destination is also the best choice.
  953.  
  954.    On the other hand, redirect traffic is rarely a significant load on a
  955.    link, and there are some cases where such a strategy would result in
  956.    more redirect traffic (on links from which the most frequently chosen
  957.    destinations are best reached via intermediate-systems other than the
  958.    one with the best default route).  Also, since the routing algorithms
  959.    learn of neighboring intermediate-systems from the advertisements,
  960.    and the default routes are learned from the routing algorithms, the
  961.    calculated preference may be unstable from time to time.  This
  962.    document makes no recommendation concerning this issue, and
  963.    implementors are free to try such a strategy, as long as they also
  964.    support static configuration of preference levels as specified above.
  965.  
  966.  
  967. 4.2.3.  Implementation
  968.  
  969.    The intermediate-system advertisement is sent to the all-systems
  970.    multicast, with the scope set to local.
  971.  
  972.    The term "advertising interface" refers to any functioning and
  973.    enabled interface that has at least one identifier whose configured
  974.    Advertise flag is TRUE.
  975.  
  976.    From each advertising interface, the system MUST transmit periodic
  977.    I-Am-Here messages.
  978.  
  979.       CONTROVERSIAL:
  980.  
  981.       When an intermediate-system discovers that it is receiving its own
  982.       advertisements, that is an indication that it has more than one
  983.       interface on same link.  The system MUST choose only one
  984.       advertising interface for each link.  Identifiers associated with
  985.       the remaining interfaces on the same link are indicated with the
  986.       Other-Identifier extension.  Redirect is used to move specific
  987.       traffic to the alternate interfaces.
  988.  
  989.       An intermediate-system MAY proxy for the identifers of other
  990.  
  991.  
  992.  
  993. Simpson                  expires in six months                 [Page 17]
  994. DRAFT                       system discovery                   June 1993
  995.  
  996.  
  997.       systems, using the Other-Identifier extension.  This SHOULD only
  998.       be used when the intermediate-system is translating to another
  999.       network-layer protocol format.
  1000.  
  1001.    The advertisements are not strictly periodic.  The interval between
  1002.    subsequent transmissions is randomized to reduce the probability of
  1003.    synchronization with the advertisements from other intermediate-
  1004.    systems on the same link.  This is done by maintaining a separate
  1005.    transmission interval timer for each advertising interface.  Each
  1006.    time an advertisement is sent from an interface, that interface's
  1007.    timer is reset to a uniformly-distributed random value between the
  1008.    configured MinAdvertisementInterval and MaxAdvertisementInterval.
  1009.    Expiration of the timer causes the next advertisement to be sent, and
  1010.    a new random value to be chosen.
  1011.  
  1012.    It is recommended that intermediate-systems include some unique value
  1013.    (such as one of their interface or link-layer addresses) in the seed
  1014.    used to initialize their pseudo-random number generators.  Although
  1015.    the randomization range is configured in units of seconds, the actual
  1016.    randomly-chosen values should not be in units of whole seconds, but
  1017.    rather in units of the highest available timer resolution.
  1018.  
  1019.    For the first few advertisements sent from an interface (up to
  1020.    MAX_INITIAL_ADVERTISEMENTS), if the randomly chosen interval is
  1021.    greater than MAX_INITIAL_ADVERT_INTERVAL, the timer should be set to
  1022.    MAX_INITIAL_ADVERT_INTERVAL instead.  Using this smaller interval for
  1023.    the initial advertisements increases the likelihood of an
  1024.    intermediate-system being discovered quickly when it first becomes
  1025.    available, in the presence of possible packet loss.
  1026.  
  1027.    An interface may become an advertising interface at times other than
  1028.    system startup, as a result of recovery from an interface failure or
  1029.    through actions of system management such as:
  1030.  
  1031.    -  enabling the interface, if it had been administratively disabled
  1032.       and it has one or more identifiers whose Advertise flag is TRUE,
  1033.  
  1034.    -  enabling SIP forwarding capability (changing the system from an
  1035.       end-system to an intermediate-system), when the interface has one
  1036.       or more identifiers whose Advertise flag is TRUE,
  1037.  
  1038.    -  setting the Advertise flag of one or more of the interface's
  1039.       identifiers to TRUE (or adding a new identifier with a TRUE
  1040.       Advertise flag), when previously the interface had no identifier
  1041.       whose Advertise flag was TRUE.
  1042.  
  1043.    In such cases, the intermediate-system must commence transmission of
  1044.    periodic advertisements on the new advertising interface, limiting
  1045.  
  1046.  
  1047.  
  1048. Simpson                  expires in six months                 [Page 18]
  1049. DRAFT                       system discovery                   June 1993
  1050.  
  1051.  
  1052.    the first few advertisements to intervals no greater than
  1053.    MAX_INITIAL_ADVERT_INTERVAL.  In the case of an end-system becoming
  1054.    an intermediate-system, the system must also join the all-routers
  1055.    multicast group on all interfaces on which the intermediate-system
  1056.    supports multicast (whether or not they are advertising interfaces).
  1057.  
  1058.    An interface MAY also cease to be an advertising interface, through
  1059.    actions of system management such as:
  1060.  
  1061.    -  shutting down the system,
  1062.  
  1063.    -  administratively disabling the interface,
  1064.  
  1065.    -  disabling SIP forwarding capability (changing the system from an
  1066.       intermediate-system to an end-system),
  1067.  
  1068.    -  setting the Advertise flags of all of the interface's identifiers
  1069.       to FALSE.
  1070.  
  1071.    In such cases, the intermediate-system SHOULD transmit a final
  1072.    multicast advertisement on the interface, identical to its previous
  1073.    transmission, but with a Lifetime field of zero.  In the case of an
  1074.    intermediate-system becoming an end-system, the system must also
  1075.    depart from the all-routers multicast group on all interfaces on
  1076.    which the intermediate-system supports multicast (whether or not they
  1077.    had been advertising interfaces).
  1078.  
  1079.    When the Advertise flag of one or more of an interface's identifiers
  1080.    are set to FALSE by system management, but there remain other
  1081.    identifiers on that interface whose Advertise flags are TRUE, the
  1082.    intermediate-system SHOULD send a single multicast advertisement
  1083.    containing only those identifiers whose Advertise flags were set to
  1084.    FALSE, with a Lifetime field of zero.
  1085.  
  1086.    In addition to the periodic unsolicited advertisements, an
  1087.    intermediate-system MUST send advertisements in response to valid
  1088.    advertisements or solicitations received on any of its advertising
  1089.    interfaces.  If the advertisement or solicitation does not contain
  1090.    any System-Heard extension, and the time since the previous
  1091.    advertisement is greater than MAX_INITIAL_ADVERT_INTERVAL, the
  1092.    intermediate-system MUST multicast an advertisement from that
  1093.    interface.
  1094.  
  1095.    Whenever these response advertisements are sent, the advertisement
  1096.    MUST be delayed for a small random interval not greater than
  1097.    MAX_RESPONSE_DELAY, in order to prevent synchronization with other
  1098.    responding intermediate-systems, and to allow multiple closely-spaced
  1099.    solicitations to be answered with a single advertisement.  The
  1100.  
  1101.  
  1102.  
  1103. Simpson                  expires in six months                 [Page 19]
  1104. DRAFT                       system discovery                   June 1993
  1105.  
  1106.  
  1107.    interface's interval timer is reset to a new random value, as with
  1108.    unsolicited advertisements.
  1109.  
  1110.  
  1111. 4.2.4.  Receipt
  1112.  
  1113.    All systems MUST silently discard any received Intermediate-System
  1114.    Advertisement messages that do not satisfy the following validity
  1115.    checks:
  1116.  
  1117.    -  ICMP Checksum is correct.
  1118.  
  1119.    -  ICMP length (derived from the payload length) is 16 or more
  1120.       octets.
  1121.  
  1122.    -  At least one Routing-Information extension.
  1123.  
  1124.    -  For interfaces which are not point-to-point links, the Media-
  1125.       Access extension.
  1126.  
  1127.  
  1128. 4.3.  Processing Advertisements
  1129.  
  1130.    Every intermediate-system saves the information contained in the
  1131.    advertisements, in order to respond to future requests.  Any other
  1132.    action on receipt of such messages by an intermediate-system (for
  1133.    example, as part of a "peer discovery" process) is beyond the scope
  1134.    of this document.
  1135.  
  1136.    An end-system saves the information contained in the advertisements,
  1137.    in order to determine the first-hop when sending datagrams.  First-
  1138.    hop determination is elaborated in a subsequent section.
  1139.  
  1140.  
  1141. 4.3.1.  Configuration
  1142.  
  1143.    The Host Requirements -- Communication Layers [1], Section 3.3.1.6,
  1144.    specifies that each end-system must support a configurable list of
  1145.    default intermediate-system identifiers.  The purpose of the
  1146.    intermediate-system discovery messages is to eliminate the need to
  1147.    configure that list.  On links for which intermediate-system
  1148.    discovery is administratively disabled, it MAY continue to be
  1149.    necessary to configure the default intermediate-system list in each
  1150.    end-system.
  1151.  
  1152.    Each entry in the list contains (at least) the following configurable
  1153.    variables:
  1154.  
  1155.  
  1156.  
  1157.  
  1158. Simpson                  expires in six months                 [Page 20]
  1159. DRAFT                       system discovery                   June 1993
  1160.  
  1161.  
  1162.    RouterAddress
  1163.  
  1164.       An identifier of a default intermediate-system.
  1165.  
  1166.       Default: (none)
  1167.  
  1168.    PreferenceLevel
  1169.  
  1170.       The preferability of the RouterAddress as a default intermediate-
  1171.       system choice, relative to other intermediate-system interfaces
  1172.       serving the same prefix on the same link.  The Host Requirements
  1173.       RFC does not specify how this value is to be encoded.  The values
  1174.       used here are defined above.
  1175.  
  1176.       Default: 255
  1177.  
  1178.  
  1179. 4.3.2.  Implementation
  1180.  
  1181.    To process an Intermediate-System Advertisement, an end-system scans
  1182.    the list of Routing-Information extensions contained in it.  For each
  1183.    identifier, the end-system does the following:
  1184.  
  1185.    -  If the prefix size is not zero, the identifier and prefix size are
  1186.       compared against any identifiers associated with the interface on
  1187.       which the message was received.  If there is a match, the
  1188.       interface prefix size is set to the advertised prefix size.
  1189.  
  1190.    -  If the identifier is not already present in the end-system's
  1191.       intermediate-system list, a new entry is added to the list,
  1192.       containing the identifier along with its accompanying preference
  1193.       level, and a timer initialized to the Lifetime value from the
  1194.       advertisement.
  1195.  
  1196.    -  If the identifier is already present in the end-system's
  1197.       intermediate-system list as a result of a previously-received
  1198.       advertisement, its preference level is updated and its timer is
  1199.       reset to the value in the newly-received advertisement.
  1200.  
  1201.    -  If the identifier is already present in the end-system's
  1202.       intermediate-system list as a result of system configuration, no
  1203.       change is made to its preference level.  There is no timer
  1204.       associated with a configured identifier.
  1205.  
  1206.    -  If a Media-Access extension is present, the intermediate-system
  1207.       list is updated with the location information.
  1208.  
  1209.    Whenever the timer expires in any entry that was created as a result
  1210.  
  1211.  
  1212.  
  1213. Simpson                  expires in six months                 [Page 21]
  1214. DRAFT                       system discovery                   June 1993
  1215.  
  1216.  
  1217.    of a received advertisement, that entry is discarded.
  1218.  
  1219.       Note that any intermediate-system identifiers acquired from the
  1220.       "Gateway" subfield of the vendor extensions field of a BOOTP
  1221.       packet [11] are considered to be configured identifiers; they are
  1222.       assigned the default preference level of 255, and they do not have
  1223.       an associated timer.
  1224.  
  1225.       Note further that any identifier found in the "giaddr" field of a
  1226.       BOOTP packet [3] identifies a BOOTP forwarder which is not
  1227.       necessarily a SIP intermediate-system; such an identifier should
  1228.       not be installed in the end-system's default intermediate-system
  1229.       list.
  1230.  
  1231.    To limit the storage needed for the default intermediate-system list,
  1232.    an end-system MAY choose not to store all of the intermediate-system
  1233.    identifiers discovered via advertisements.  The end-system SHOULD
  1234.    discard those identifiers with lower preference levels in favor of
  1235.    those with higher levels.  It is desirable to retain more than one
  1236.    default intermediate-system identifier in the list; if the current
  1237.    choice of default intermediate-system is discovered to be down, the
  1238.    end-system may immediately choose another default intermediate-system
  1239.    without having to wait for the next advertisement to arrive.
  1240.  
  1241.    Any intermediate-system identifier advertised with a preference level
  1242.    of zero is not to be used by the end-system as default intermediate-
  1243.    system identifier.  Such an identifier may be omitted from the
  1244.    default intermediate-system list, unless its timer is being use as a
  1245.    "black-hole" detection mechanism.
  1246.  
  1247.  
  1248.  
  1249.  
  1250.  
  1251.  
  1252.  
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258.  
  1259.  
  1260.  
  1261.  
  1262.  
  1263.  
  1264.  
  1265.  
  1266.  
  1267.  
  1268. Simpson                  expires in six months                 [Page 22]
  1269. DRAFT                       system discovery                   June 1993
  1270.  
  1271.  
  1272. 5.  End-System Discovery
  1273.  
  1274.    Within a directly attached link, each system must be able to locate
  1275.    end-systems with which it desires to communicate.  This is
  1276.    accomplished using the Where-Are-You and I-Am-Here messages described
  1277.    below.  This is independent of any specific media.
  1278.  
  1279.    When an intermediate-system needs the location of an end-system, it
  1280.    sends the Where-Are-You solicitation.  The target end-system responds
  1281.    with the I-Am-Here advertisement.
  1282.  
  1283.    When no intermediate-system advertisements have been heard, an end-
  1284.    system sends the Where-Are-You solicitation itself.  The target end-
  1285.    system responds with the I-Am-Here advertisement as usual.
  1286.  
  1287.    When an end-system has heard one or more intermediate-system
  1288.    advertisements, the default behavior is to send all datagrams to the
  1289.    preferred intermediate-system.  If the target end-system is
  1290.    accessible on the local link, the intermediate-system sends a
  1291.    redirect back indicating the appropriate media address.
  1292.  
  1293.    When an end-system has heard one or more intermediate-system
  1294.    advertisements, and no zone or prefix-routing is being used, or no
  1295.    prefix matches any current interface identifier, the end-system can
  1296.    assume that it is operating as a mobile end-system.  The mobile end-
  1297.    system advertises on a periodic basis, just as an intermediate-
  1298.    system.
  1299.  
  1300.  
  1301. 5.1.  Solicitations
  1302.  
  1303.    Every SIP system MUST implement End-System Solicitation for discovery
  1304.    of local end-systems.
  1305.  
  1306.    When a system is ready to send a datagram to another system, it
  1307.    examines its cache of system locations.  If no intermediate-system
  1308.    advertisements have been received, the system MUST send the Where-
  1309.    Are-You solicitation to prompt the advertisement of the target
  1310.    system.
  1311.  
  1312.    If (and only if) no advertisements from the target system are
  1313.    forthcoming, the system MAY retransmit the Where-Are-You a small
  1314.    number of times, but then MUST desist from sending more
  1315.    solicitations.
  1316.  
  1317.  
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323. Simpson                  expires in six months                 [Page 23]
  1324. DRAFT                       system discovery                   June 1993
  1325.  
  1326.  
  1327. 5.1.1.  Implementation
  1328.  
  1329.    The end-system solicitation is sent to the all-systems multicast.
  1330.  
  1331.    The end-system solicitations use the same configuration constants as
  1332.    intermediate-system solicitations.
  1333.  
  1334.    Unlike intermediate-system solicitations, end-system solicitations
  1335.    are sent only when a particular end-system location is needed, rather
  1336.    than on startup.
  1337.  
  1338.    End-system solicitations are sent using the same periodicity
  1339.    calculations as intermediate-system solicitations.
  1340.  
  1341.    Upon receiving a valid advertisement from any intermediate-system, an
  1342.    end-system MUST NOT send any end-system solicitations.
  1343.  
  1344.  
  1345. 5.1.2.  Receipt
  1346.  
  1347.    An intermediate-system MUST silently discard any received End-System
  1348.    Solicitation messages.
  1349.  
  1350.    An end-system MUST silently discard any received End-System
  1351.    Solicitation messages that do not satisfy the following validity
  1352.    checks:
  1353.  
  1354.    -  ICMP Checksum is correct.
  1355.  
  1356.    -  ICMP length (derived from the payload length) is 16 or more
  1357.       octets.
  1358.  
  1359.    -  Source Address is either 0 or the identifier of a neighbor (an
  1360.       identifier that matches one of the end-system's own identifiers on
  1361.       the arrival interface under the prefix mask associated with that
  1362.       identifer, or the zone associated with that interface).
  1363.  
  1364.  
  1365. 5.2.  Advertisements
  1366.  
  1367.    Every SIP end-system MUST implement End-System Advertisements.
  1368.  
  1369.    Usually, end-system advertisements are sent in response to end-system
  1370.    solicitations.  In addition, mobile end-system advertisements and
  1371.    service end-system advertisements (described below) are sent on a
  1372.    periodic basis.
  1373.  
  1374.    The end-system advertisements include such important information as
  1375.  
  1376.  
  1377.  
  1378. Simpson                  expires in six months                 [Page 24]
  1379. DRAFT                       system discovery                   June 1993
  1380.  
  1381.  
  1382.    the media address to access the system, and neighboring
  1383.    intermediate-systems heard.
  1384.  
  1385.  
  1386. 5.2.1.  Implementation
  1387.  
  1388.    The periodic mobile end-system advertisement is sent to the all-
  1389.    routers multicast.
  1390.  
  1391.    The single end-system advertisement in respnse to a solicitation is
  1392.    sent to the all-systems multicast.
  1393.  
  1394.    In either case, the scope is set to local.
  1395.  
  1396.       CONTROVERIAL: The all-systems multicast is used for end-system
  1397.       advertisements, rather than responding directly to the soliciting
  1398.       system.  This is under the assumption that all intermediate-
  1399.       systems need to update the list of active end-systems, when the
  1400.       query is sent by a router.  Logically, the response could be sent
  1401.       to all-routers.
  1402.  
  1403.       However, when the query is sent by an end-system, there are no
  1404.       routers present.  The response could be sent directly to the
  1405.       requesting end-system.
  1406.  
  1407.       There is no easy way to determine that the sender was an
  1408.       intermediate-system rather than an end-system.  The only multicast
  1409.       which covers both cases is all-systems.
  1410.  
  1411.    Mobile advertisements use similar configuration constants and
  1412.    variables as intermediate-system advertisements.
  1413.  
  1414.    Mobile advertisements are sent using the same periodicity
  1415.    calculations as intermediate-system advertisements.
  1416.  
  1417.    Advertising interfaces are established and terminated in the same
  1418.    manner as intermediate-system advertisements.
  1419.  
  1420.  
  1421.  
  1422.  
  1423.  
  1424.  
  1425.  
  1426.  
  1427.  
  1428.  
  1429.  
  1430.  
  1431.  
  1432.  
  1433. Simpson                  expires in six months                 [Page 25]
  1434. DRAFT                       system discovery                   June 1993
  1435.  
  1436.  
  1437. 6.  Service Discovery
  1438.  
  1439.    Each system offering one of the special configuration services
  1440.    detailed below, whether an end-system or intermediate-system,
  1441.    includes that service availability in every advertisement that it
  1442.    sends.  All systems discover the location of these services simply by
  1443.    listening for the advertisements.  This eliminates the need for
  1444.    manual configuration, periodic probes, and special handling of
  1445.    certain packet types by intermediate-systems.
  1446.  
  1447.    The learned service information is included in any neighboring
  1448.    intermediate-system advertisements.  In this fashion, the
  1449.    intermediate-system advertisements provide a summary of all available
  1450.    network services, and pass information beyond the link where the
  1451.    advertisement originated.  This results in a reduction of network
  1452.    traffic when compared to the broadcast or multicast of service
  1453.    discovery requests/replies over a wide area.
  1454.  
  1455.    The initial services listed here are primarily concerned with
  1456.    configuration.  The locations of other facilities may be learned from
  1457.    these basic servers.
  1458.  
  1459.    Domain Name Service
  1460.  
  1461.       Before a system can communicate with another system, it must learn
  1462.       that system's identifiers and location.  The Domain Name System
  1463.       (DNS) is usually used for this purpose.
  1464.  
  1465.       In the past, this was accomplished by reading a list of servers
  1466.       from a (possibly remote) configuration file at startup time.  Some
  1467.       systems discovered servers by sending periodic probes to a
  1468.       broadcast or multicast address.  Both of these methods have
  1469.       serious drawbacks.  Configuration files must be maintained
  1470.       manually (a significant administrative burden when ther are large
  1471.       numbers of systems), and are unable to track dynamic changes in
  1472.       DNS availability.  Periodic probes are restricted from using
  1473.       recursion (see Host Requirements -- Application and Support [2],
  1474.       Section 6.1.3.2), and are thus limited to information about the
  1475.       local domain.
  1476.  
  1477.       In practice, only systems which are users or stub resolvers of the
  1478.       DNS can use the DNS server advertisements.  Full-Service resolvers
  1479.       MUST continue to be manually configured to ensure a heirarchy of
  1480.       believability within the network.
  1481.  
  1482.    Self-Configuration Service
  1483.  
  1484.       Before a system can communicate with another system, it must learn
  1485.  
  1486.  
  1487.  
  1488. Simpson                  expires in six months                 [Page 26]
  1489. DRAFT                       system discovery                   June 1993
  1490.  
  1491.  
  1492.       its own identity.  The Bootstrap Protocol (BOOTP) is frequently
  1493.       used for this purpose.
  1494.  
  1495.       In the past, this was accomplished by ad hoc passing of BOOTP
  1496.       requests by routers.  This method has several serious drawbacks.
  1497.       Presence of the feature cannot be relied upon.  It is not of much
  1498.       use for mobile, roving or portable systems.
  1499.  
  1500.  
  1501. 6.1.  Solicitations
  1502.  
  1503.    Every SIP end-system SHOULD implement End-System Solicitation for
  1504.    discovery of local services.
  1505.  
  1506.    When a system is ready to use a particular service, it examines its
  1507.    cache of such services.  If no intermediate-system or other service
  1508.    advertisements have been received, the system MAY send the Where-
  1509.    Are-You solicitation to prompt the advertisement of the service.
  1510.  
  1511.    If (and only if) no advertisements from desired services are
  1512.    forthcoming, the system MAY retransmit the Where-Are-You a small
  1513.    number of times, but then MUST desist from sending more
  1514.    solicitations.
  1515.  
  1516.  
  1517. 6.1.1.  Implementation
  1518.  
  1519.    The service solicitation is sent to the special multicast for each
  1520.    particular service, with the scope set to local.
  1521.  
  1522.    The service solicitations use the same configuration constants as
  1523.    intermediate-system and end-system solicitations.
  1524.  
  1525.    Unlike intermediate-system solicitations, service solicitations are
  1526.    sent only when a particular service is utilized, rather than on
  1527.    startup.
  1528.  
  1529.    Service solicitations are sent using the same periodicity
  1530.    calculations as intermediate-system and end-system solicitations.
  1531.  
  1532.    Upon receiving a valid advertisement from any intermediate-system,
  1533.    the system MUST NOT send any service solicitation.
  1534.  
  1535.    Service solicitations require the same validity checks as end-system
  1536.    solicitations.
  1537.  
  1538.  
  1539.  
  1540.  
  1541.  
  1542.  
  1543. Simpson                  expires in six months                 [Page 27]
  1544. DRAFT                       system discovery                   June 1993
  1545.  
  1546.  
  1547. 6.2.  Advertisements
  1548.  
  1549.    Like intermediate-system and mobile end-system advertisements,
  1550.    service end-systems advertisements are sent on a periodic basis.
  1551.  
  1552.    Services offered by intermediate-systems are included in the
  1553.    intermediate-system advertisements described above.
  1554.  
  1555.  
  1556. 6.2.1.  Implementation
  1557.  
  1558.    The service advertisement is sent to the all-systems multicast, with
  1559.    the scope set to local.
  1560.  
  1561.       CONTROVERIAL: The all-systems multicast is used for service
  1562.       advertisements, rather than different multicasts for each service.
  1563.       This is under the assumption that all systems need to learn of
  1564.       services.
  1565.  
  1566.       This corresponds to the design for intermediate-system
  1567.       advertisements.  Thus, intermediate-system advertisements can be
  1568.       viewed as a special case of service advertisements.
  1569.  
  1570.       This ensures that the design will operate when there are no
  1571.       routers, and when the routing protocols are still initializing.
  1572.  
  1573.    The service advertisements use similar configuration constants and
  1574.    variables as intermediate-system advertisements.
  1575.  
  1576.    Service advertisements are sent using the same periodicity
  1577.    calculations as intermediate-system advertisements.
  1578.  
  1579.    Advertising interfaces are established and terminated in the same
  1580.    manner as intermediate-system advertisements.
  1581.  
  1582.    When any system ceases to offer an advertised service, the system
  1583.    SHOULD transmit a final multicast advertisement on the interface,
  1584.    identical to its previous transmission, but with a Lifetime field of
  1585.    zero.
  1586.  
  1587.  
  1588.  
  1589.  
  1590.  
  1591.  
  1592.  
  1593.  
  1594.  
  1595.  
  1596.  
  1597.  
  1598. Simpson                  expires in six months                 [Page 28]
  1599. DRAFT                       system discovery                   June 1993
  1600.  
  1601.  
  1602. 7.  Self Discovery
  1603.  
  1604.  
  1605.  
  1606. 7.1.  End-Systems
  1607.  
  1608.    At startup, each SIP end-system solicits the advertisements of
  1609.    intermediate-systems, as described in Intermediate-System Discovery
  1610.    above.  Until an intermediate-system is discovered, an end-system is
  1611.    limited to accessing systems and services for the links to which it
  1612.    is directly attached.
  1613.  
  1614.    In the absence of an intermediate-system, each SIP end-system
  1615.    solicits the advertisements of services as described in Service
  1616.    Discovery above.  Until self-configuration services are discovered,
  1617.    an end-system is limited to accessing systems and services according
  1618.    to prior configuration.
  1619.  
  1620.  
  1621. 7.1.1.  Zone Determination
  1622.  
  1623.    Until an intermediate-system is discovered, an end-system assumes a
  1624.    zone number of zero.  When combined with any IEEE-802 number found in
  1625.    the machine, or other identifier negotiated at the link level, this
  1626.    yields a local identifier which is unique to the system.
  1627.  
  1628.    When an intermediate-system is discovered, the advertisements are
  1629.    examined for zone information, as described in Intermediate-System
  1630.    Discovery above.  If all advertised zone values are zero, then zone
  1631.    routing is not available beyond that link.  If more than one zone
  1632.    number is discovered for the same interface, only the highest zone
  1633.    number is used.
  1634.  
  1635.    When there is more than one interface on a multi-homed end-system,
  1636.    each interface MUST answer to all of the local identifers generated.
  1637.  
  1638.    When more than one IEEE-802 number is available, the primary system
  1639.    identifier is composed of the highest zone discovered, combined with
  1640.    the highest IEEE-802 number found.
  1641.  
  1642.  
  1643. 7.1.2.  Initialization
  1644.  
  1645.    Once a system has becomed locally addressable, it can engage in
  1646.    exchanges with local servers.  Some of these local servers could be a
  1647.    bootstrap service, for loading and configuring the system.  Another
  1648.    server could be a registration service, in charge of managing the
  1649.    local name and identifier space.
  1650.  
  1651.  
  1652.  
  1653. Simpson                  expires in six months                 [Page 29]
  1654. DRAFT                       system discovery                   June 1993
  1655.  
  1656.  
  1657.    When the registration service is unable to find a match for the
  1658.    system, the system SHOULD request the operator to provide a name for
  1659.    the system.  The registration service would be responsible for
  1660.    ensuring uniqueness, and assigning appropriate identifiers for the
  1661.    name.
  1662.  
  1663.    Further specification of such services is beyond the scope of this
  1664.    document.
  1665.  
  1666.  
  1667. 7.1.3.  Identifier Determination
  1668.  
  1669.    Once the Domain Name has been determined for a system, the Domain
  1670.    Name Service SHOULD be consulted to determine the globally advertised
  1671.    identifiers for the system.  In this fashion, system is coordinated
  1672.    with the most current information actually propagated within the
  1673.    internet.
  1674.  
  1675.    Each DNS identifier has a Time-To-Live associated with it.  When any
  1676.    identifier expires, another request SHOULD be made to the DNS for a
  1677.    list of identifiers.
  1678.  
  1679.    When there is more than one interface on a multi-homed end-system,
  1680.    each interface MUST answer to all of the identifers learned.
  1681.  
  1682.    When more than one identifier is returned for a system, the primary
  1683.    system identifier is the identifier with the highest TTL, or the
  1684.    first listed identifier of those with the highest TTL.
  1685.  
  1686.  
  1687. 7.1.4.  Prefix Determination
  1688.  
  1689.    The prefix size is dynamically learned from matching interface
  1690.    identifiers against the intermediate-system advertisements, as
  1691.    described in Intermediate-System Discovery above.
  1692.  
  1693.    Unlike previous practice, an end-system prefix sizes SHOULD NOT be
  1694.    preconfigured.  Any preconfigured value MUST be superceded by new
  1695.    values and changes propagated in intermediate-system advertisements.
  1696.  
  1697.  
  1698. 7.1.5.  Changing Identifiers
  1699.  
  1700.  
  1701.  
  1702. 7.2.  Intermediate-Systems
  1703.  
  1704.    The zones and prefixes are assigned by hand.
  1705.  
  1706.  
  1707.  
  1708. Simpson                  expires in six months                 [Page 30]
  1709. DRAFT                       system discovery                   June 1993
  1710.  
  1711.  
  1712. 8.  Next-Hop Determination
  1713.  
  1714.    When an end-system has not heard any intermediate-system
  1715.    advertisements, it is assumed that all end-systems are only
  1716.    accessible on the local link.
  1717.  
  1718.    multi-homed
  1719.  
  1720.    preferred router
  1721.  
  1722.    smart selection
  1723.  
  1724.    local redirect
  1725.  
  1726.    remote redirect
  1727.  
  1728.  
  1729.  
  1730.  
  1731.  
  1732.  
  1733.  
  1734.  
  1735.  
  1736.  
  1737.  
  1738.  
  1739.  
  1740.  
  1741.  
  1742.  
  1743.  
  1744.  
  1745.  
  1746.  
  1747.  
  1748.  
  1749.  
  1750.  
  1751.  
  1752.  
  1753.  
  1754.  
  1755.  
  1756.  
  1757.  
  1758.  
  1759.  
  1760.  
  1761.  
  1762.  
  1763. Simpson                  expires in six months                 [Page 31]
  1764. DRAFT                       system discovery                   June 1993
  1765.  
  1766.  
  1767. 8.1.  Examples of Use
  1768.  
  1769.        Simple case -- J to K on the same fully-connected link.
  1770.  
  1771.            J sends the Where-Are-You (which contains its own media address)
  1772.            to all-systems.  K sends the I-Am-Here (which contains its own
  1773.            media address) directly to all-systems.  At this point, they
  1774.            both know that they can talk directly to each other, without
  1775.            regard to subnet.
  1776.  
  1777.        Routed case -- J to K not on the same fully-connected link.
  1778.  
  1779.            If no resource reservation or policy routing is desired, J
  1780.            simply sends its packets directly to the "preferred" router that
  1781.            it has learned from the Advertisements.  If there is a better
  1782.            router for the first-hop, that router sends the I-Am-Here
  1783.            redirect to J, but never-the-less forwards the packet.
  1784.  
  1785.            In the presence of RR or PR, J sends a Where-Are-You to the
  1786.            "preferred" router that it has learned from the Advertisements.
  1787.            That router always returns an I-Am-Here redirect (even if the
  1788.            correct hop is itself), which contains the requested RR or PR
  1789.            status information.  J then sends its packets to the first-hop
  1790.            router as determined from the I-Am-Here.
  1791.  
  1792.        General case -- J to K over disconnected partial mesh (radio/framerelay).
  1793.  
  1794.            J periodically sends the I-Am-Here (which contains its own media
  1795.            address, and the addresses of its "heard" routers) to the
  1796.            all-routers multicast.  The routers use such messages to
  1797.            construct a map of the current state of the topology.  The
  1798.            routers now know who J hears, and who hears J.
  1799.  
  1800.            If the routing map doesn't contain a current whereabouts of K,
  1801.            the Destination Unreachable message is returned by the "best"
  1802.            router on J's "heard" list.
  1803.  
  1804.            If the routing map contains the current whereabouts of K, the
  1805.            "best" router on K's "heard" list sends a Where-Are-You to K,
  1806.            with a list of routers which can hear K.  The list is ordered by
  1807.            the intersection of those routers which can also hear J,
  1808.            minimizing the number of hops.
  1809.  
  1810.            When K hears the Where-Are-You, it sends the I-Am-Here to the
  1811.            all-systems address.  The "best" router on J's "heard" list
  1812.            sends an I-Am-Here redirect to J, with a substitute list of
  1813.            routers which can hear J.  The list is ordered by the
  1814.            intersection of those routers which can also hear K.
  1815.  
  1816.  
  1817.  
  1818. Simpson                  expires in six months                 [Page 32]
  1819. DRAFT                       system discovery                   June 1993
  1820.  
  1821.  
  1822.            Of course, J may have heard K's I-Am-Here directly.
  1823.  
  1824.            At this point, the routing fabric knows which routers are heard
  1825.            by J and K, and which routers can hear J and K.  J and K know
  1826.            whether they can hear each other directly.  If not, they know
  1827.            the "best" next-hop router (which may not be the same in both
  1828.            directions).
  1829.  
  1830.            Unlike the fully-connected scenarios, this scheme requires that
  1831.            the I-Am-Here is sent from time to time to keep the map updated.
  1832.            However, only routers need store the information.
  1833.  
  1834.  
  1835.  
  1836.  
  1837.  
  1838.  
  1839.  
  1840.  
  1841.  
  1842.  
  1843.  
  1844.  
  1845.  
  1846.  
  1847.  
  1848.  
  1849.  
  1850.  
  1851.  
  1852.  
  1853.  
  1854.  
  1855.  
  1856.  
  1857.  
  1858.  
  1859.  
  1860.  
  1861.  
  1862.  
  1863.  
  1864.  
  1865.  
  1866.  
  1867.  
  1868.  
  1869.  
  1870.  
  1871.  
  1872.  
  1873. Simpson                  expires in six months                 [Page 33]
  1874. DRAFT                       system discovery                   June 1993
  1875.  
  1876.  
  1877. 9.  Additional ICMP Packets
  1878.  
  1879.    The Packet format and basic facilities are already defined for ICMP
  1880.    [3], as modified for SIP [1].
  1881.  
  1882.    Up-to-date values of the ICMP Type field are specified in the most
  1883.    recent "Assigned Numbers" RFC [2].  This document concerns the
  1884.    following values:
  1885.  
  1886.       <TBD>   Where-Are-You
  1887.       <TBD>   I-Am-Here
  1888.  
  1889.  
  1890.  
  1891.  
  1892.  
  1893.  
  1894.  
  1895.  
  1896.  
  1897.  
  1898.  
  1899.  
  1900.  
  1901.  
  1902.  
  1903.  
  1904.  
  1905.  
  1906.  
  1907.  
  1908.  
  1909.  
  1910.  
  1911.  
  1912.  
  1913.  
  1914.  
  1915.  
  1916.  
  1917.  
  1918.  
  1919.  
  1920.  
  1921.  
  1922.  
  1923.  
  1924.  
  1925.  
  1926.  
  1927.  
  1928. Simpson                  expires in six months                 [Page 34]
  1929. DRAFT                       system discovery                   June 1993
  1930.  
  1931.  
  1932. 9.1.  Where-Are-You
  1933.  
  1934.    A summary of the Where-Are-You message format is shown below.  The
  1935.    fields are transmitted from left to right.
  1936.  
  1937.     0                   1                   2                   3
  1938.     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  1939.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  1940.    |     Type      |     Code      |          Checksum             |
  1941.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  1942.    |                           Reserved                            |
  1943.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  1944.    |                                                               |
  1945.    +                       System Identifier                       +
  1946.    |                                                               |
  1947.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  1948.    |   Extensions ...
  1949.    +-+-+-+-+-+-+-+-+-+-+-+-+
  1950.  
  1951.  
  1952.    Type
  1953.  
  1954.       <TBD>
  1955.  
  1956.    Code
  1957.  
  1958.       The Code field is one octet.  Up-to-date values of the I-Am-Here
  1959.       Code field are specified in the most recent "Assigned Numbers" RFC
  1960.       [2].  Current values are assigned as follows:
  1961.  
  1962.            0     RESERVED
  1963.            1     End-System Solicitation
  1964.            2     Intermediate-System Solicitation
  1965.  
  1966.  
  1967.    Checksum
  1968.  
  1969.       The ICMP Checksum.
  1970.  
  1971.    System Identifier
  1972.  
  1973.       The System Identifier field is eight octets in length, and
  1974.       contains an identifier of the system which is sought.  When the
  1975.       identifer of the system is unknown, the field is zero filled.
  1976.  
  1977.    Extensions
  1978.  
  1979.       The Extensions field is variable in length and contains zero or
  1980.  
  1981.  
  1982.  
  1983. Simpson                  expires in six months                 [Page 35]
  1984. DRAFT                       system discovery                   June 1993
  1985.  
  1986.  
  1987.       more Extensions.  These Extensions are described in a later
  1988.       section.
  1989.  
  1990. The contents of the Reserved field are ignored.  Future backward-
  1991. compatible changes to the protocol may specify the contents of the
  1992. Reserved field or of additional octets at the end of the message.
  1993.  
  1994.  
  1995.  
  1996.  
  1997.  
  1998.  
  1999.  
  2000.  
  2001.  
  2002.  
  2003.  
  2004.  
  2005.  
  2006.  
  2007.  
  2008.  
  2009.  
  2010.  
  2011.  
  2012.  
  2013.  
  2014.  
  2015.  
  2016.  
  2017.  
  2018.  
  2019.  
  2020.  
  2021.  
  2022.  
  2023.  
  2024.  
  2025.  
  2026.  
  2027.  
  2028.  
  2029.  
  2030.  
  2031.  
  2032.  
  2033.  
  2034.  
  2035.  
  2036.  
  2037.  
  2038. Simpson                  expires in six months                 [Page 36]
  2039. DRAFT                       system discovery                   June 1993
  2040.  
  2041.  
  2042. 9.1.1.  End-System Solicitation
  2043.  
  2044.    The End-System Solicitation contains the following values:
  2045.  
  2046.    -  In the Destination Address field of the SIP header: For service
  2047.       solicitations, the special multicast group associated with the
  2048.       service.  For other solicitations, the all-systems multicast.  In
  2049.       either case, the scope is set to local.
  2050.  
  2051.    -  In the Source Address field of the SIP header: any identifier
  2052.       associated with the sending interface.  It MAY contain zero if the
  2053.       system has not yet determined an identifier for the interface.
  2054.  
  2055.    -  In the Code field of the ICMP header: 1 for End-System
  2056.       Solicitation.
  2057.  
  2058.    -  For each intermediate-system advertisement that has been heard,
  2059.       the System-Heard extension.
  2060.  
  2061.    -  For interfaces which are not point-to-point links, the Media-
  2062.       Access extension.
  2063.  
  2064.    In the unlikely event that not all extensions fit in a single
  2065.    solicitaion, as constrained by the MTU of the link, the remaining
  2066.    extensions are removed.  Only a single solicitation is sent.
  2067.  
  2068.  
  2069.  
  2070.  
  2071.  
  2072.  
  2073.  
  2074.  
  2075.  
  2076.  
  2077.  
  2078.  
  2079.  
  2080.  
  2081.  
  2082.  
  2083.  
  2084.  
  2085.  
  2086.  
  2087.  
  2088.  
  2089.  
  2090.  
  2091.  
  2092.  
  2093. Simpson                  expires in six months                 [Page 37]
  2094. DRAFT                       system discovery                   June 1993
  2095.  
  2096.  
  2097. 9.1.2.  Intermediate-System Solicitation
  2098.  
  2099.    The Intermediate-System Solicitation contains the following values:
  2100.  
  2101.    -  In the Destination Address field of the SIP header: the all-
  2102.       routers multicast, with the scope set to local.
  2103.  
  2104.    -  In the Source Address field of the SIP header: any identifier
  2105.       associated with the sending interface.  It MAY contain zero if the
  2106.       system has not yet determined an identifier for the interface.
  2107.  
  2108.    -  In the Code field of the ICMP header: 2 for Intermediate-System
  2109.       Solicitation.
  2110.  
  2111.    -  For each of that system's interface identifiers other than the
  2112.       primary identifier, the Other-Identifier extension, with the
  2113.       prefix size set to zero.
  2114.  
  2115.    -  For each intermediate-system advertisement that has been heard,
  2116.       the System-Heard extension.
  2117.  
  2118.    -  For interfaces which are not point-to-point links, the Media-
  2119.       Access extension.
  2120.  
  2121.    In the unlikely event that not all extensions fit in a single
  2122.    solicitaion, as constrained by the MTU of the link, multiple
  2123.    solicitations are sent, with each except the last containing as many
  2124.    extensions as can fit.
  2125.  
  2126.  
  2127.  
  2128.  
  2129.  
  2130.  
  2131.  
  2132.  
  2133.  
  2134.  
  2135.  
  2136.  
  2137.  
  2138.  
  2139.  
  2140.  
  2141.  
  2142.  
  2143.  
  2144.  
  2145.  
  2146.  
  2147.  
  2148. Simpson                  expires in six months                 [Page 38]
  2149. DRAFT                       system discovery                   June 1993
  2150.  
  2151.  
  2152. 9.2.  I-Am-Here
  2153.  
  2154.    A summary of the I-Am-Here message format is shown below.  The fields
  2155.    are transmitted from left to right.
  2156.  
  2157.     0                   1                   2                   3
  2158.     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  2159.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2160.    |     Type      |     Code      |          Checksum             |
  2161.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2162.    |        Sequence Number        |          LifeTime             |
  2163.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2164.    |                                                               |
  2165.    +                       System Identifier                       +
  2166.    |                                                               |
  2167.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2168.    |   Extensions ...
  2169.    +-+-+-+-+-+-+-+-+-+-+-+-+
  2170.  
  2171.  
  2172.    Type
  2173.  
  2174.       <TBD>
  2175.  
  2176.    Code
  2177.  
  2178.       The Code field is one octet.  Up-to-date values of the I-Am-Here
  2179.       Code field are specified in the most recent "Assigned Numbers" RFC
  2180.       [2].  Current values are assigned as follows:
  2181.  
  2182.            0     RESERVED
  2183.            1     End-System Advertisement
  2184.            2     Intermediate-System Advertisement
  2185.            3     Local Redirect
  2186.            4     Remote Redirect
  2187.  
  2188.  
  2189.    Checksum
  2190.  
  2191.       The ICMP Checksum.
  2192.  
  2193.    Sequence Number
  2194.  
  2195.       The Sequence Number field is two octets in length, and contains
  2196.       the number of I-Am-Here messsages sent since the system was
  2197.       initialized.  This number MUST include this advertisement.
  2198.  
  2199.  
  2200.  
  2201.  
  2202.  
  2203. Simpson                  expires in six months                 [Page 39]
  2204. DRAFT                       system discovery                   June 1993
  2205.  
  2206.  
  2207.    LifeTime
  2208.  
  2209.       The LifeTime field is two octets in length, and indicates the
  2210.       seconds remaining before the entry is considered invalid.
  2211.  
  2212.    System Identifier
  2213.  
  2214.       The System Identifier field is eight octets in length, and
  2215.       contains the primary identifier for this system.  Other
  2216.       identifiers are indicated with the Other-Identifier extension.
  2217.  
  2218.    Extensions
  2219.  
  2220.       The Extensions field is variable in length and contains zero or
  2221.       more Extensions.  These Extensions are described in a later
  2222.       section.
  2223.  
  2224.  
  2225.  
  2226.  
  2227.  
  2228.  
  2229.  
  2230.  
  2231.  
  2232.  
  2233.  
  2234.  
  2235.  
  2236.  
  2237.  
  2238.  
  2239.  
  2240.  
  2241.  
  2242.  
  2243.  
  2244.  
  2245.  
  2246.  
  2247.  
  2248.  
  2249.  
  2250.  
  2251.  
  2252.  
  2253.  
  2254.  
  2255.  
  2256.  
  2257.  
  2258. Simpson                  expires in six months                 [Page 40]
  2259. DRAFT                       system discovery                   June 1993
  2260.  
  2261.  
  2262. 9.2.1.  End-System Advertisement
  2263.  
  2264.    The End-System Advertisement contains the following values:
  2265.  
  2266.    -  In the Destination Address field of the SIP header: For periodic
  2267.       mobile end-system advertisements, the all-routers multicast.  For
  2268.       other end-system advertisements, the all-systems multicast.  In
  2269.       either case, the scope is set to local.
  2270.  
  2271.    -  In the Source Address field of the SIP header: For service
  2272.       advertisements, the primary identifier associated with that
  2273.       system.  For responses to solicitations, the identifier specified
  2274.       in the solicitation.
  2275.  
  2276.    -  In the Code field of the ICMP header: 1 for End-System
  2277.       Advertisement.
  2278.  
  2279.    -  In the Lifetime field: the interface's configured
  2280.       AdvertisementLifetime.
  2281.  
  2282.    -  For each of that system's interface identifiers other than the
  2283.       primary identifier, the Other-Identifier extension, with the
  2284.       prefix size set to zero.
  2285.  
  2286.    -  For each service advertisement that is offered, the Service-
  2287.       Information extension.
  2288.  
  2289.    -  For each intermediate-system advertisement that has been heard,
  2290.       the System-Heard extension.
  2291.  
  2292.    -  For interfaces which are not point-to-point links, the Media-
  2293.       Access extension.
  2294.  
  2295.    In the unlikely event that not all extensions fit in a single
  2296.    advertisement, as constrained by the MTU of the link, multiple
  2297.    advertisements are sent, with each except the last containing as many
  2298.    extensions as can fit.
  2299.  
  2300.  
  2301.  
  2302.  
  2303.  
  2304.  
  2305.  
  2306.  
  2307.  
  2308.  
  2309.  
  2310.  
  2311.  
  2312.  
  2313. Simpson                  expires in six months                 [Page 41]
  2314. DRAFT                       system discovery                   June 1993
  2315.  
  2316.  
  2317. 9.2.2.  Intermediate-System Advertisement
  2318.  
  2319.    The Intermediate-System Advertisement contains the following values:
  2320.  
  2321.    -  In the Destination Address field of the SIP header: the all-
  2322.       systems multicast, with the scope set to local.
  2323.  
  2324.    -  In the Source Address field of the SIP header: the primary
  2325.       identifier of the system.  The same identifier is used for all
  2326.       interfaces.
  2327.  
  2328.    -  In the Code field of the ICMP header: 2 for Intermediate-System
  2329.       Advertisement.
  2330.  
  2331.    -  In the Lifetime field: the interface's configured
  2332.       AdvertisementLifetime.
  2333.  
  2334.    -  For each of that interface's identifiers whose Advertise flags are
  2335.       TRUE, the Routing-Information extension.
  2336.  
  2337.    -  For each of that interface's recently changed identifiers, the
  2338.       Change-Identifier extension.
  2339.  
  2340.    -  For each of that system's other interface's identifiers which have
  2341.       not already been included through prefix subsumption, the Other-
  2342.       Identifier extension.
  2343.  
  2344.    -  For each service that is offered, or has been learned from another
  2345.       advertisement, the Service-Information extension.
  2346.  
  2347.    -  For each intermediate-system advertisement that has been heard,
  2348.       the System-Heard extension.
  2349.  
  2350.    -  For interfaces which are not point-to-point links, the Media-
  2351.       Access extension.
  2352.  
  2353.    In the unlikely event that not all extensions fit in a single
  2354.    advertisement, as constrained by the MTU of the link, multiple
  2355.    advertisements are sent, with each except the last containing as many
  2356.    extensions as can fit.
  2357.  
  2358.  
  2359.  
  2360.  
  2361.  
  2362.  
  2363.  
  2364.  
  2365.  
  2366.  
  2367.  
  2368. Simpson                  expires in six months                 [Page 42]
  2369. DRAFT                       system discovery                   June 1993
  2370.  
  2371.  
  2372. 10.  Extensions
  2373.  
  2374.    Extensions allow variable amounts of information to be carried within
  2375.    each Advertisement or Advertisement packet.  Some extensions are
  2376.    common to both packet types.
  2377.  
  2378.    The end of the list of Extensions is indicated by the Payload Length
  2379.    of the SIP packet.
  2380.  
  2381.    A summary of the Extensions format is shown below.  The fields are
  2382.    transmitted from left to right.
  2383.  
  2384.     0                   1
  2385.     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9
  2386.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2387.    |     Type      |    Length     |    Data ...
  2388.    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2389.  
  2390.  
  2391.    Type
  2392.  
  2393.       The Type field is one octet and indicates the type of Extension.
  2394.       Up-to-date values of the Extension Type field are specified in the
  2395.       most recent "Assigned Numbers" RFC [2].  Current values are
  2396.       assigned as follows:
  2397.  
  2398.            1     Media-Access
  2399.            2     Change-Identifier
  2400.            3     Other-Identifier
  2401.            4     System-Heard
  2402.            5     Routing-Information
  2403.            6     Service-Information
  2404.            7     Transit-Information
  2405.            8     Authentication
  2406.            9     Security-Information
  2407.           10     Redirected-Header
  2408.  
  2409.  
  2410.    Length
  2411.  
  2412.       The Length field is one octet and indicates the length of the Data
  2413.       field which has been used.
  2414.  
  2415.       Each Extension ends on an octet boundary which is an integral
  2416.       multiple of four octets.  Any unused portion of the Data field is
  2417.       padded with zeros.
  2418.  
  2419.  
  2420.  
  2421.  
  2422.  
  2423. Simpson                  expires in six months                 [Page 43]
  2424. DRAFT                       system discovery                   June 1993
  2425.  
  2426.  
  2427.  
  2428.       length          actual
  2429.       0 through 2        4
  2430.       3 through 6        8
  2431.       7 through 10      12
  2432.  
  2433.  
  2434.    Data
  2435.  
  2436.       The Data field is zero or more octets and contains the value or
  2437.       other information for this Extension.  The format and length of
  2438.       the Data field is determined by the Type and Length fields.
  2439.  
  2440.  
  2441.  
  2442.  
  2443.  
  2444.  
  2445.  
  2446.  
  2447.  
  2448.  
  2449.  
  2450.  
  2451.  
  2452.  
  2453.  
  2454.  
  2455.  
  2456.  
  2457.  
  2458.  
  2459.  
  2460.  
  2461.  
  2462.  
  2463.  
  2464.  
  2465.  
  2466.  
  2467.  
  2468.  
  2469.  
  2470.  
  2471.  
  2472.  
  2473.  
  2474.  
  2475.  
  2476.  
  2477.  
  2478. Simpson                  expires in six months                 [Page 44]
  2479. DRAFT                       system discovery                   June 1993
  2480.  
  2481.  
  2482. 10.1.  Media-Access
  2483.  
  2484. A summary of the Media-Access extension format is shown below.  The
  2485. fields are transmitted from left to right.
  2486.  
  2487.  0                   1                   2                   3
  2488.  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  2489. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2490. |     Type      |    Length     |           Media Type          |
  2491. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2492. |     MAC Address ...
  2493. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2494.  
  2495.  
  2496. Type
  2497.  
  2498.      1
  2499.  
  2500. Length
  2501.  
  2502.      >= 3
  2503.  
  2504. Media Type
  2505.  
  2506.    The Media Type field is two octets in length.  The value of this
  2507.    field is the same as the Hardware Type used in ARP.  Up-to-date
  2508.    values of the Hardware Type field are specified in the most recent
  2509.    "Assigned Numbers" RFC [2].
  2510.  
  2511.       [Should we use the ifType from MIB-II instead?]
  2512.  
  2513. MAC Address
  2514.  
  2515.    The MAC Address field is variable in length, and contains the media
  2516.    address which is used to access this system.
  2517.  
  2518.    The MAC Address is always specified in Canonical order.
  2519.  
  2520. The Media-Access extension MUST be included in those messages sent from
  2521. an interface on a multi-access media.
  2522.  
  2523. It MUST NOT be included in a message sent from a point-to-point
  2524. interface, or in messages such as the Remote Redirect which pass through
  2525. intermediate systems.
  2526.  
  2527.  
  2528.  
  2529.  
  2530.  
  2531.  
  2532.  
  2533. Simpson                  expires in six months                 [Page 45]
  2534. DRAFT                       system discovery                   June 1993
  2535.  
  2536.  
  2537. 10.2.  Change-Identifier
  2538.  
  2539. A summary of the Change-Identifier extension format is shown below.  The
  2540. fields are transmitted from left to right.
  2541.  
  2542.  0                   1                   2                   3
  2543.  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  2544. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2545. |     Type      |    Length     |                   |Prefix Size|
  2546. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2547. |                                                               |
  2548. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2549. |                                                               |
  2550. +                         Old Identifier                        +
  2551. |                                                               |
  2552. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2553. |                                                               |
  2554. +                         New Identifier                        +
  2555. |                                                               |
  2556. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2557.  
  2558.  
  2559. Type
  2560.  
  2561.      2
  2562.  
  2563. Length
  2564.  
  2565.     22
  2566.  
  2567. Prefix Size
  2568.  
  2569.    The Prefix Size field is six bits in length, and indicates the number
  2570.    of bits in both Identifiers which define the prefix mask for the
  2571.    link.  The value ranges from 0 to 62.
  2572.  
  2573.    End-Systems MUST have a Prefix Size of zero.
  2574.  
  2575. Old Identifier
  2576.  
  2577.    The Old Identifier field is eight octets in length, and contains the
  2578.    old identifier for this interface.
  2579.  
  2580. New Identifier
  2581.  
  2582.    The New Identifier field is eight octets in length, and contains one
  2583.    of the identifiers for this interface.  This may be another
  2584.    identifier for the same interface that sent the message, or may
  2585.  
  2586.  
  2587.  
  2588. Simpson                  expires in six months                 [Page 46]
  2589. DRAFT                       system discovery                   June 1993
  2590.  
  2591.  
  2592.    identify another interface on the same system which sent the message.
  2593.  
  2594.  
  2595.  
  2596.  
  2597.  
  2598.  
  2599.  
  2600.  
  2601.  
  2602.  
  2603.  
  2604.  
  2605.  
  2606.  
  2607.  
  2608.  
  2609.  
  2610.  
  2611.  
  2612.  
  2613.  
  2614.  
  2615.  
  2616.  
  2617.  
  2618.  
  2619.  
  2620.  
  2621.  
  2622.  
  2623.  
  2624.  
  2625.  
  2626.  
  2627.  
  2628.  
  2629.  
  2630.  
  2631.  
  2632.  
  2633.  
  2634.  
  2635.  
  2636.  
  2637.  
  2638.  
  2639.  
  2640.  
  2641.  
  2642.  
  2643. Simpson                  expires in six months                 [Page 47]
  2644. DRAFT                       system discovery                   June 1993
  2645.  
  2646.  
  2647. 10.3.  Other-Identifier
  2648.  
  2649. A summary of the Other-Identifier extension format is shown below.  The
  2650. fields are transmitted from left to right.
  2651.  
  2652.  0                   1                   2                   3
  2653.  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  2654. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2655. |     Type      |    Length     |                   |Prefix Size|
  2656. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2657. |                            Metric                             |
  2658. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2659. |                                                               |
  2660. +                      Interface Identifier                     +
  2661. |                                                               |
  2662. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2663.  
  2664.  
  2665. Type
  2666.  
  2667.      3
  2668.  
  2669. Length
  2670.  
  2671.     14
  2672.  
  2673. Prefix Size
  2674.  
  2675.    The Prefix Size field is six bits in length, and indicates the number
  2676.    of bits in the Interface Identifier which define the prefix mask for
  2677.    the link.  The value ranges from 0 to 62.
  2678.  
  2679.    If the Interface Identifier does not indicate a valid prefix, the
  2680.    value is zero.
  2681.  
  2682.    End-Systems MUST have a Prefix Size of zero.
  2683.  
  2684. Metric
  2685.  
  2686.    The Metric field is four octets in length, and indicates the
  2687.    preference level for use of this system to forward packets to the
  2688.    Interface Identifier.  Lower values indicate greater preference.
  2689.  
  2690.    End-Systems MUST set this field to zero.
  2691.  
  2692. Interface Identifier
  2693.  
  2694.    The Interface Identifier field is eight octets in length, and
  2695.  
  2696.  
  2697.  
  2698. Simpson                  expires in six months                 [Page 48]
  2699. DRAFT                       system discovery                   June 1993
  2700.  
  2701.  
  2702.    contains one of the identifiers for this system.  This may be another
  2703.    identifier for the same interface that sent the message, or may
  2704.    identify another interface on the same system which sent the message.
  2705.  
  2706. Every identifier for every interface is listed in each I-Am-Here
  2707. message.
  2708.  
  2709. This supports multiple identifiers per interface, as well as multi-homed
  2710. systems.
  2711.  
  2712. When a number of interfaces, such as point-to-point interfaces, may be
  2713. aggregated with the same prefix, only one extension need be included.
  2714.  
  2715. This enables end-systems to determine the best next-hop without sending
  2716. a Where-Are-You solicitation when the next-hop is on another interface
  2717. attached to the same advertising system.
  2718.  
  2719.  
  2720.  
  2721.  
  2722.  
  2723.  
  2724.  
  2725.  
  2726.  
  2727.  
  2728.  
  2729.  
  2730.  
  2731.  
  2732.  
  2733.  
  2734.  
  2735.  
  2736.  
  2737.  
  2738.  
  2739.  
  2740.  
  2741.  
  2742.  
  2743.  
  2744.  
  2745.  
  2746.  
  2747.  
  2748.  
  2749.  
  2750.  
  2751.  
  2752.  
  2753. Simpson                  expires in six months                 [Page 49]
  2754. DRAFT                       system discovery                   June 1993
  2755.  
  2756.  
  2757. 10.4.  System-Heard
  2758.  
  2759. A summary of the System-Heard extension format is shown below.  The
  2760. fields are transmitted from left to right.
  2761.  
  2762.  0                   1                   2                   3
  2763.  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  2764. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2765. |     Type      |    Length     |     Speed     |D|B|Prefix Size|
  2766. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2767. |              MRU              |                               |
  2768. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2769. |                                                               |
  2770. +                       System Identifier                       +
  2771. |                                                               |
  2772. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2773. |        Sequence Number        |      Remaining LifeTime       |
  2774. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2775. |                            Quality                            |
  2776. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2777. |                      Advertisement Count                      |
  2778. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2779. |                          Error Count                          |
  2780. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2781.  
  2782.  
  2783. Type
  2784.  
  2785.      4
  2786.  
  2787. Length
  2788.  
  2789.     30
  2790.  
  2791. Designated Bit
  2792.  
  2793.    The Designated Bit indicates that the System Identifier is the
  2794.    Designated Router.
  2795.  
  2796. Backup Bit
  2797.  
  2798.    The Backup Bit indicates that the System Identifier is the Backup
  2799.    Designated Router.
  2800.  
  2801. Prefix Size
  2802.  
  2803.    The Prefix Size field is six bits in length, and indicates the number
  2804.    of bits in the System Identifier which define the prefix mask for the
  2805.  
  2806.  
  2807.  
  2808. Simpson                  expires in six months                 [Page 50]
  2809. DRAFT                       system discovery                   June 1993
  2810.  
  2811.  
  2812.    link.  The value ranges from 0 to 62.
  2813.  
  2814.    If the System Identifier does not indicate a valid prefix, the value
  2815.    is zero.
  2816.  
  2817.    End-Systems MUST have a Prefix Size of zero.
  2818.  
  2819. MRU
  2820.  
  2821.    The Maximum Receive Unit field is two octets in length, and indicates
  2822.    the maximum size packet that the system will receive over the link.
  2823.  
  2824. Speed
  2825.  
  2826.    The Speed field is one octet in length, and indicates the speed of
  2827.    the link over which the advertisement or solicitation was heard.
  2828.    Higher values indicate greater speed.  The speed value is related to
  2829.    int( 10 * ln( speed / 100 ) ) in bits per second.
  2830.  
  2831.       After considerable trial and error, this formula was used because
  2832.       it gave the best distribution for distinguishing medium speed
  2833.       links, and fit reasonably well in the realm of currently
  2834.       envisioned speeds.  It has an upper limit of 11.87 Terabits per
  2835.       second.  (It also has a convenient button on the calculator.)
  2836.  
  2837.         0      link is down
  2838.         1 - 9  reserved
  2839.        10      300 or less
  2840.        24    1,200                  96      1,544,000 T1
  2841.        31    2,400                  99      2,048,000 E1
  2842.        38    4,800                 106      4,000,000 Token Ring
  2843.        42    7,200                 110      6,312,000 T2
  2844.        45    9,600                 115     10,000,000 Ethernet
  2845.        49   14,400                 119     16,000,000 Token Ring
  2846.        52   19,200
  2847.        56   28,800                 130     44,736,000 T3
  2848.        59   38,400                 142    155,520,000 STS-3,STM-1
  2849.        63   57,600                 202    622,080,000 STS-12,STM-4
  2850.        64   64,000                 216  2,488,320,000 STS-48,STM-16
  2851.        71  128,000
  2852.        73  153,600
  2853.        78  256,000
  2854.  
  2855.  
  2856. System Identifier
  2857.  
  2858.    The System Identifier field is eight octets in length, and contains
  2859.    the primary identifier for the system, taken from the Source Address
  2860.  
  2861.  
  2862.  
  2863. Simpson                  expires in six months                 [Page 51]
  2864. DRAFT                       system discovery                   June 1993
  2865.  
  2866.  
  2867.    field of the advertisement heard.
  2868.  
  2869. Sequence Number
  2870.  
  2871.    The Sequence Number field is two octets in length, and contains the
  2872.    last heard sequence number from the system.
  2873.  
  2874. Remaining LifeTime
  2875.  
  2876.    The Remaining LifeTime field is two octets in length, and indicates
  2877.    the seconds remaining before the entry is considered invalid.
  2878.  
  2879. Quality
  2880.  
  2881.    The Quality field is four octets in length, and contains an
  2882.    indication of the signal quality received from this system.  Higher
  2883.    values indicate greater quality.
  2884.  
  2885. Advertisement Count
  2886.  
  2887.    The Advertisement Count field is four octets in length, and indicates
  2888.    the number of advertisements that have been heard from the identified
  2889.    system.
  2890.  
  2891. Error Count
  2892.  
  2893.    The Error Count field is four octets in length, and indicates the
  2894.    number of errors which have been detected on the link with the
  2895.    identified system.
  2896.  
  2897. This extension is included in every I-Am-Here.
  2898.  
  2899.  
  2900.  
  2901.  
  2902.  
  2903.  
  2904.  
  2905.  
  2906.  
  2907.  
  2908.  
  2909.  
  2910.  
  2911.  
  2912.  
  2913.  
  2914.  
  2915.  
  2916.  
  2917.  
  2918. Simpson                  expires in six months                 [Page 52]
  2919. DRAFT                       system discovery                   June 1993
  2920.  
  2921.  
  2922. 10.5.  Routing-Information
  2923.  
  2924. A summary of the Routing-Information extension format is shown below.
  2925. The fields are transmitted from left to right.
  2926.  
  2927.  0                   1                   2                   3
  2928.  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  2929. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2930. |     Type      |    Length     |  Preference   |D|B|Prefix Size|
  2931. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2932. |              MRU              |     Zone      |   Priority    |
  2933. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2934. |                                                               |
  2935. +                      Interface Identifier                     +
  2936. |                                                               |
  2937. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  2938.  
  2939.  
  2940. Type
  2941.  
  2942.      5
  2943.  
  2944. Length
  2945.  
  2946.     14
  2947.  
  2948. Preference
  2949.  
  2950.    The Preference field is one octet in length, and indicates the
  2951.    preference level for use of this system to forward packets to the
  2952.    Interface Identifier.  Higher values indicate greater preference.
  2953.  
  2954. Designated Bit
  2955.  
  2956.    The Designated Bit indicates that the system is the Designated
  2957.    Router.
  2958.  
  2959. Backup Bit
  2960.  
  2961.    The Backup Bit indicates that the system is the Backup Designated
  2962.    Router.
  2963.  
  2964. Prefix Size
  2965.  
  2966.    The Prefix Size field is six bits in length, and indicates the number
  2967.    of bits in the Interface Identifier which define the prefix mask for
  2968.    the link.  The value ranges from 0 to 62.
  2969.  
  2970.  
  2971.  
  2972.  
  2973. Simpson                  expires in six months                 [Page 53]
  2974. DRAFT                       system discovery                   June 1993
  2975.  
  2976.  
  2977.    If the Interface Identifier does not indicate a valid prefix, the
  2978.    value is zero.
  2979.  
  2980. MRU
  2981.  
  2982.    The Maximum Receive Unit field is two octets in length, and indicates
  2983.    the maximum size packet that the system will receive over the link.
  2984.  
  2985. Zone
  2986.  
  2987.    The Zone field is one octet in length, and indicates the zone for the
  2988.    link.  A value of zero indicates that no zone has been assigned.
  2989.  
  2990. Priority
  2991.  
  2992.    The Priority field is one octet in length, and indicates the priority
  2993.    for election to Designated Backup.  A value of zero indicates that
  2994.    the system is not eligible.
  2995.  
  2996. Interface Identifier
  2997.  
  2998.    The Interface Identifier field is eight octets in length, and
  2999.    contains one of the identifiers for this interface.
  3000.  
  3001. This extension is sent only by Intermediate-Systems.
  3002.  
  3003. When more than one of these extensions is present, the Designated and
  3004. Backup bits, MRU, Zone and Priority fields MUST be the same in each
  3005. copy.
  3006.  
  3007.  
  3008.  
  3009.  
  3010.  
  3011.  
  3012.  
  3013.  
  3014.  
  3015.  
  3016.  
  3017.  
  3018.  
  3019.  
  3020.  
  3021.  
  3022.  
  3023.  
  3024.  
  3025.  
  3026.  
  3027.  
  3028. Simpson                  expires in six months                 [Page 54]
  3029. DRAFT                       system discovery                   June 1993
  3030.  
  3031.  
  3032. 10.6.  Service-Information
  3033.  
  3034. A summary of the Service-Information extension format is shown below.
  3035. The fields are transmitted from left to right.
  3036.  
  3037.  0                   1                   2                   3
  3038.  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  3039. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3040. |     Type      |    Length     |           Service             |
  3041. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3042. |        Sequence Number        |      Remaining LifeTime       |
  3043. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3044. |                                                               |
  3045. +                       System Identifier                       +
  3046. |                                                               |
  3047. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3048. |     Data ...
  3049. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3050.  
  3051.  
  3052. Type
  3053.  
  3054.      6
  3055.  
  3056. Length
  3057.  
  3058.     >= 14
  3059.  
  3060. Service
  3061.  
  3062.    The Service field is two octets in length.  The value of this field
  3063.    is usually the same as the well-known port number.  Up-to-date values
  3064.    of the Service field are specified in the most recent "Assigned
  3065.    Numbers" RFC [2].
  3066.  
  3067. Sequence Number
  3068.  
  3069.    The Sequence Number field is two octets in length, and contains the
  3070.    last heard sequence number from the system.
  3071.  
  3072. Remaining LifeTime
  3073.  
  3074.    The Remaining LifeTime field is two octets in length, and indicates
  3075.    the seconds remaining before the entry is considered invalid.
  3076.  
  3077. System Identifier
  3078.  
  3079.    The System Identifier field is eight octets in length, and contains
  3080.  
  3081.  
  3082.  
  3083. Simpson                  expires in six months                 [Page 55]
  3084. DRAFT                       system discovery                   June 1993
  3085.  
  3086.  
  3087.    the primary identifier for this system.
  3088.  
  3089. Data
  3090.  
  3091.    The Data field is variable in length, and contains information
  3092.    specific to the service.  For example, it could contain a string with
  3093.    the description of the service.
  3094.  
  3095.    The format of the Data field is entirely service dependent, and is
  3096.    always treated as a binary value.
  3097.  
  3098.  
  3099.  
  3100.  
  3101.  
  3102.  
  3103.  
  3104.  
  3105.  
  3106.  
  3107.  
  3108.  
  3109.  
  3110.  
  3111.  
  3112.  
  3113.  
  3114.  
  3115.  
  3116.  
  3117.  
  3118.  
  3119.  
  3120.  
  3121.  
  3122.  
  3123.  
  3124.  
  3125.  
  3126.  
  3127.  
  3128.  
  3129.  
  3130.  
  3131.  
  3132.  
  3133.  
  3134.  
  3135.  
  3136.  
  3137.  
  3138. Simpson                  expires in six months                 [Page 56]
  3139. DRAFT                       system discovery                   June 1993
  3140.  
  3141.  
  3142. 10.7.  Transit-Information
  3143.  
  3144. A summary of the Transit-Information extension format is shown below.
  3145. The fields are transmitted from left to right.
  3146.  
  3147.  0                   1                   2                   3
  3148.  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  3149. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3150. |     Type      |    Length     |               |      QoS      |
  3151. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3152. |                             Metric                            |
  3153. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3154.  
  3155.  
  3156. Type
  3157.  
  3158.      7
  3159.  
  3160. Length
  3161.  
  3162.      6
  3163.  
  3164. QoS
  3165.  
  3166.    The Quality of Service field is one octet in length, and indicates a
  3167.    service for which transit will be accepted.
  3168.  
  3169. Metric
  3170.  
  3171.    The Metric field is four octets in length, and indicates the
  3172.    preference level for use of this network link to forward packets of
  3173.    the indicated Quality of Service.  Lower values indicate greater
  3174.    preference.
  3175.  
  3176. This extension is included in the Intermediate-System I-Am-Here to
  3177. indicate that it will accept transit traffic.  If this extension is not
  3178. included, other intermediate-systems will treat the link as a stub
  3179. network.
  3180.  
  3181.  
  3182.  
  3183.  
  3184.  
  3185.  
  3186.  
  3187.  
  3188.  
  3189.  
  3190.  
  3191.  
  3192.  
  3193. Simpson                  expires in six months                 [Page 57]
  3194. DRAFT                       system discovery                   June 1993
  3195.  
  3196.  
  3197. 10.8.  Authentication
  3198.  
  3199. A summary of the Authentication extension format is shown below.  The
  3200. fields are transmitted from left to right.
  3201.  
  3202.  0                   1                   2                   3
  3203.  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  3204. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3205. |     Type      |    Length     |                               |
  3206. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3207. |     Data ...
  3208. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3209.  
  3210.  
  3211. Type
  3212.  
  3213.      8
  3214.  
  3215. Length
  3216.  
  3217.     22
  3218.  
  3219. Data
  3220.  
  3221.    The Data field is variable in length, and contains information
  3222.    specific to the authentication method,
  3223.  
  3224.  
  3225. This extension is included in any I-Am-Here.
  3226.  
  3227.  
  3228.  
  3229.  
  3230.  
  3231.  
  3232.  
  3233.  
  3234.  
  3235.  
  3236.  
  3237.  
  3238.  
  3239.  
  3240.  
  3241.  
  3242.  
  3243.  
  3244.  
  3245.  
  3246.  
  3247.  
  3248. Simpson                  expires in six months                 [Page 58]
  3249. DRAFT                       system discovery                   June 1993
  3250.  
  3251.  
  3252. 10.9.  Security-Information
  3253.  
  3254. A summary of the Security-Information extension format is shown below.
  3255. The fields are transmitted from left to right.
  3256.  
  3257.  0                   1                   2                   3
  3258.  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  3259. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3260. |     Type      |    Length     |                               |
  3261. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3262. |                                                               |
  3263. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3264. |     Compartments ...
  3265. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3266.  
  3267.  
  3268. Type
  3269.  
  3270.      9
  3271.  
  3272. Length
  3273.  
  3274.     22
  3275.  
  3276. Compartments
  3277.  
  3278.    The Compartments field is sixteen octets in length.
  3279.  
  3280. This extension is included in the Intermediate-System I-Am-Here to
  3281. indicate that it will accept transit traffic for the designated security
  3282. compartments.
  3283.  
  3284.  
  3285.  
  3286.  
  3287.  
  3288.  
  3289.  
  3290.  
  3291.  
  3292.  
  3293.  
  3294.  
  3295.  
  3296.  
  3297.  
  3298.  
  3299.  
  3300.  
  3301.  
  3302.  
  3303. Simpson                  expires in six months                 [Page 59]
  3304. DRAFT                       system discovery                   June 1993
  3305.  
  3306.  
  3307. 10.10.  Redirected-Header
  3308.  
  3309. A summary of the Redirected-Header extension format is shown below.  The
  3310. fields are transmitted from left to right.
  3311.  
  3312.  0                   1                   2                   3
  3313.  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
  3314. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3315. |     Type      |    Length     |                               |
  3316. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3317. |                                                               |
  3318. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3319. |     SIP Header ...
  3320. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  3321.  
  3322.  
  3323. Type
  3324.  
  3325.     10
  3326.  
  3327. Length
  3328.  
  3329.     22
  3330.  
  3331. SIP Header
  3332.  
  3333.    The SIP Header field is 48 octets in length.
  3334.  
  3335. This extension is included in the Local or Remote Redirect to verifiy
  3336. the traffic that is being redirected.
  3337.  
  3338.  
  3339.  
  3340.  
  3341.  
  3342.  
  3343.  
  3344.  
  3345.  
  3346.  
  3347.  
  3348.  
  3349.  
  3350.  
  3351.  
  3352.  
  3353.  
  3354.  
  3355.  
  3356.  
  3357.  
  3358. Simpson                  expires in six months                 [Page 60]
  3359. DRAFT                       system discovery                   June 1993
  3360.  
  3361.  
  3362. Security Considerations
  3363.  
  3364.  
  3365.  
  3366. References
  3367.  
  3368.    [1]
  3369.  
  3370.    [2]
  3371.  
  3372.  
  3373. Acknowledgments
  3374.  
  3375.  
  3376.  
  3377. Chair's Address
  3378.  
  3379.    The working group can be contacted via the current chairs:
  3380.  
  3381.  
  3382.  
  3383.  
  3384.  
  3385. Author's Address
  3386.  
  3387.    Questions about this memo can also be directed to:
  3388.  
  3389.       William Allen Simpson
  3390.       Daydreamer
  3391.       Computer Systems Consulting Services
  3392.       P O Box 6205
  3393.       East Lansing, MI  48826-6205
  3394.  
  3395.       EMail: Bill.Simpson@um.cc.umich.edu
  3396.  
  3397.  
  3398.  
  3399.  
  3400.  
  3401.  
  3402.  
  3403.  
  3404.  
  3405.  
  3406.  
  3407.  
  3408.  
  3409.  
  3410.  
  3411.  
  3412.  
  3413. Simpson                  expires in six months                 [Page 61]
  3414. DRAFT                       system discovery                   June 1993
  3415.  
  3416.  
  3417.                            Table of Contents
  3418.  
  3419.  
  3420.      1.     Terminology ...........................................    1
  3421.  
  3422.      2.     Criteria ..............................................    2
  3423.  
  3424.      3.     Design Overview .......................................    8
  3425.         3.1       System Identification ...........................    9
  3426.         3.2       Multicast Support ...............................   10
  3427.  
  3428.      4.     Intermediate-System Discovery .........................   11
  3429.         4.1       Solicitations ...................................   11
  3430.            4.1.1  Constants .......................................   12
  3431.            4.1.2  Implementation ..................................   12
  3432.            4.1.3  Receipt .........................................   13
  3433.         4.2       Advertisements ..................................   13
  3434.            4.2.1  Constants .......................................   15
  3435.            4.2.2  Configuration ...................................   15
  3436.            4.2.3  Implementation ..................................   17
  3437.            4.2.4  Receipt .........................................   20
  3438.         4.3       Processing Advertisements .......................   20
  3439.            4.3.1  Configuration ...................................   20
  3440.            4.3.2  Implementation ..................................   21
  3441.  
  3442.      5.     End-System Discovery ..................................   23
  3443.         5.1       Solicitations ...................................   23
  3444.            5.1.1  Implementation ..................................   24
  3445.            5.1.2  Receipt .........................................   24
  3446.         5.2       Advertisements ..................................   24
  3447.            5.2.1  Implementation ..................................   25
  3448.  
  3449.      6.     Service Discovery .....................................   26
  3450.         6.1       Solicitations ...................................   27
  3451.            6.1.1  Implementation ..................................   27
  3452.         6.2       Advertisements ..................................   28
  3453.            6.2.1  Implementation ..................................   28
  3454.  
  3455.      7.     Self Discovery ........................................   29
  3456.         7.1       End-Systems .....................................   29
  3457.            7.1.1  Zone Determination ..............................   29
  3458.            7.1.2  Initialization ..................................   29
  3459.            7.1.3  Identifier Determination ........................   30
  3460.            7.1.4  Prefix Determination ............................   30
  3461.            7.1.5  Changing Identifiers ............................   30
  3462.         7.2       Intermediate-Systems ............................   30
  3463.  
  3464.      8.     Next-Hop Determination ................................   31
  3465.  
  3466.  
  3467.  
  3468. Simpson                  expires in six months                 [Page ii]
  3469. DRAFT                       system discovery                   June 1993
  3470.  
  3471.  
  3472.         8.1       Examples of Use .................................   32
  3473.  
  3474.      9.     Additional ICMP Packets ...............................   34
  3475.         9.1       Where-Are-You ...................................   35
  3476.            9.1.1  End-System Solicitation .........................   37
  3477.            9.1.2  Intermediate-System Solicitation ................   38
  3478.         9.2       I-Am-Here .......................................   39
  3479.            9.2.1  End-System Advertisement ........................   41
  3480.            9.2.2  Intermediate-System Advertisement ...............   42
  3481.  
  3482.      10.    Extensions ............................................   43
  3483.         10.1      Media-Access ....................................   45
  3484.         10.2      Change-Identifier ...............................   46
  3485.         10.3      Other-Identifier ................................   48
  3486.         10.4      System-Heard ....................................   50
  3487.         10.5      Routing-Information .............................   53
  3488.         10.6      Service-Information .............................   55
  3489.         10.7      Transit-Information .............................   57
  3490.         10.8      Authentication ..................................   58
  3491.         10.9      Security-Information ............................   59
  3492.         10.10     Redirected-Header ...............................   60
  3493.  
  3494.      SECURITY CONSIDERATIONS ......................................   61
  3495.  
  3496.      REFERENCES ...................................................   61
  3497.  
  3498.      ACKNOWLEDGEMENTS .............................................   61
  3499.  
  3500.      CHAIR'S ADDRESS ..............................................   61
  3501.  
  3502.      AUTHOR'S ADDRESS .............................................   61
  3503.  
  3504.  
  3505.  
  3506.  
  3507.  
  3508.  
  3509.  
  3510.  
  3511.  
  3512.  
  3513.  
  3514.  
  3515.  
  3516.  
  3517.  
  3518.  
  3519.  
  3520.  
  3521.  
  3522.  
  3523.